Ich bin sicher, dass ich mich dumm anstelle, aber ich werde aus dieser Frage nicht schlau.
Ich habe zwei Tabellen:
Abteilung( did, name ) employee( eid, first, last, did )
sie haben entsprechende Entitäten JPA verwaltete Entitäten Abteilung und Mitarbeiter. Employee hat ein Feld Deparment, Department unterhält keine Mitarbeiterliste. Ich möchte jedoch alle Abteilungen finden, die keine Mitarbeiter haben. Mit einfachem, altem SQL ist dies mit einer linken Verknüpfung leicht möglich:
SELECT d.*
FROM department as d LEFT OUTER JOIN employee as e
ON d.did = e.did
WHERE e.did IS NULL
Ich weiß allerdings nicht, wie ich diese Abfrage in JPQL übersetzen soll. Alle Beispiele, die ich für JPQL Links-Joins gefunden habe, durchlaufen den Link in die andere Richtung, zum Beispiel.
SELECT e FROM Employee e LEFT JOIN e.departmert d
Ich hingegen benötige eher etwas wie
SELECT d FROM Department d LEFT JOIN d.???? WHERE e.department IS NULL
aber die Abteilung hat keinen Bezug zu ihren Mitarbeitern (in meiner Anwendung sind es natürlich nicht Abteilungen und Mitarbeiter). Ist das in JPQL überhaupt möglich?