Ich bin davon ausgegangen, dass Buchung unique ist, das war wohl falsch.
Den falschen
SQL will ich aber nicht auf mir sitzen lassen. Wenn ich nicht wieder von den falschen Voraussetzungen ausgehe, sollte der das richtige Ergebnis liefern:
SQL-Code:
SELECT P.ID, TEMP.BUCHUNG, TB.AUFTRAGID FROM PERSONAL P
JOIN (SELECT PERSONALID, MAX(BUCHUNG) BUCHUNG FROM TERMINAL_BUCHUNGEN GROUP BY PERSONALID) TEMP on TEMP.PERSONALID=P.ID
JOIN TERMINAL_BUCHUNGEN TB ON TEMP.BUCHUNG = TB.BUCHUNG and TEMP.PERSONALID = TB.PERSONALID
Eigentlich kann ich mir nicht vorstellen, dass dieser
SQL so grottenschlecht ist. Mit den passenden Indizes sollte der wenigstens in die Nähe der Siegerlöscung kommen.
Lutz