Marco Wagner: INNER JOIN NULL PROBLEM mit GROUP

Beitrag lesen

Hallo allerseits,

mein Problem ist ähnlich wie das typische Problem, dass auftritt wenn man einen INNER JOIN durchführt ohne OR ... IS NULL Abfrage. Dann werden die NULL Datensätze nicht angezeigt.

Problematischerweise funktioniert bei dem konkreten SQL String hier die OR ... IS NULL Abfrage nicht, weil die Gruppierung sonst durcheinander kommt (Gruppierung notwendig wegen dem COUNT)

Folgender SQL String liefert aller Ergebnisse richtig, nur falls IDKLASSIFIZIERUNG NULL ist werden diese Leistungen nicht geliefert und die sollen geliefert werden:

SELECT  VORGANG.IDLEISTUNG as Leistung,
 P_LEISTUNG_KLASSIFIZIERUNG.BEZEICHNUNG as Klassifizierung,
 COUNT(VORGANG.IDLEISTUNG) as COUNT_IDLEISTUNG
FROM  VORGANG,
 P_LEISTUNG_KLASSIFIZIERUNG
WHERE
 VORGANG.IDKLASSIFIZIERUNG=P_LEISTUNG_KLASSIFIZIERUNG.IDKLASSIFIZIERUNG

GROUP BY
 VORGANG.IDLEISTUNG,
 P_LEISTUNG_KLASSIFIZIERUNG.BEZEICHNUNG
ORDER BY
 VORGANG.IDLEISTUNG,
 Klassifizierung

Wie gesagt, bringt das Hinzufügen von OR VORGANG.IDKLASSIFIZIERUNG IS NULL leider nichts, weil er dann mit der Klassifizierungs-Gruppierung total durcheinander kommt. Ich wüsste keine Lösung mehr, außer die DB Tabellen zu ändern und NULL Werte rauszuschmeissen. Vielleicht ist ja hier jemand dabei der nen Tipp oder eine Lösung parat hat, so dass der SQL String mir die Lösung liefert.

Zur kurzen Erläuterung noch:
Es sind nur zwei Tabellen mit je zwei Spalten (+Testdaten):

a) VORGANG:
IDLEISTUNG, IDKLASSIFIZIERUNG
69, 1
69, 1
69, 1
69, 1
69, 2
69, 2
69, NULL
100, NULL

b) P_LEISTUNG_KLASSIFIZIERUNG:
IDKLASSIFIZIERUNG, BEZEICHNUNG
1, Sportlehrer
2, Arzt

d) Beispielausgabe
Leistung, Klassifizierung, Anzahl der Leistungen
69, NULL, 1
69, 1, 4
69, 2, 2
100, NULL

Alle Zeilen, wo die IDKLASSIFIZIERUNG NULL ist werden aber leider nicht ausgegeben.

Mit Besten Dank & Grüßen
-Marco Wagner-