Hallo!
// 3.
SELECT vorh.std FROM vorh LEFT JOIN verg ON (vorh.std=verg.std) WHERE verg.pers=4711 AND verg.std IS NULL;Fall 3 zeigt kein Ergebnis. Sorry, der erhoffte Lerneffekt ist ausgeblieben.
Ich hatte es ungetestet geschrieben:
SELECT vorh.std FROM vorh LEFT JOIN verg ON (vorh.std=verg.std AND verg.pers=4711) WHERE verg.std IS NULL;
Das (... verg.pers=4711) im ON steht ist IMHO nach Standard nicht korrekt, funktioniert aber.
Wenn Du die Tabelle folgendemaßen erweiterst, also was eine Person absolute an Stunden haben kann...
std pers
---
1 4711
2 4711
3 4711
4 4711
5 4711
1 4711
2 4711
3 4711
4 4711
5 4711
geht es auch so:
SELECT vorh.std, vorh.pers, verg.std, verg.pers
FROM vorh LEFT JOIN verg ON (vorh.std=verg.std AND vorh.pers=verg.pers) WHERE vorh.pers=4711 AND verg.std IS NULL;
MfG, André Laugks
L-Andre @ gmx.de