Vinzenz Mai: Vermutlich triviale SQL-Anfrage

Beitrag lesen

Hallo Eddie

Ich habe zwei Tabellen, "Kunden" und "Lieblingskunden", die jeweils nur das Attribut "eMail" enthalten (ist nur ein Beispiel).
"Kunden" enthält auch alle Lieblingskunden, und eben noch andere :-) ("Kunden" ist also Obermenge von "Lieblingskunden")

Wie kann ich jetzt die E-Mail-Adressen der anderen (also der nicht-Lieblingskunden) rausfinden? Also das Komplement!

Der LEFT OUTER JOIN in Verbindung mit IS NULL hilft Dir weiter:

  
SELECT k.eMail  
FROM kunden k  
LEFT OUTER JOIN lieblingskunden l  
ON k.eMail = l.eMail  
WHERE l.eMail IS NULL  

sollte es tun, siehe dazu join-Syntax und is null im MySQL-Handbuch.

Freundliche Grüße

Vinzenz