Hallo, Forum,
seit Tagen versuche ich eine Lösung mit Hilfe des JOIN-Kommandos, aber es klappt nicht. Mein Problem:
Ich habe eine Adress-Tabelle (adr) mit Lieferanten (adr.adr_kz=1) und Kunden (adr.adr_kz=2).
Nun möchte ich alle Kunden sehen. Kein Problem mit
SELECT adr.id, adr.name1 FROM adr WHERE ( adr.adr_kz = 2 ) ORDER BY adr.name1;
In einer zweiten Tabelle sind Rechnungen an die Kunden. Pro Kunde möchte ich wissen, wie viele Rechnungen geschrieben wurden. Auch das klappt:
SELECT kunden_id, count(*) FROM rech GROUP BY rech.kunden_id;
Nun möchte ich ALLE Kunden sehen und ZUSÄTZLICH bei den Rechnungsempfängern die Anzahl der Rechnungen. Doch ich sehe NUR die Rechnungsempfänger, Kunden ohne Rechnung fehlen:
SELECT adr.name1, count(*) FROM adr
INNER JOIN rech ON adr.id = rech.kunden_id
WHERE ( adr.adr_kz = 2 )
GROUP BY adr.name1;
Was mache ich falsch ? Ist JOIN das falsche Wort ?
Liebe Grüße aus Worms, Kalle