Einzelnen Beitrag anzeigen

Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.438 Beiträge
 
Delphi 2007 Professional
 
#1

LeftOuter Join mit Select verbessern?

  Alt 8. Jan 2008, 11:17
Datenbank: Firebird • Version: 2 • Zugriff über: IBConsole
Kann man solche Abfragen irgendwie Eleganter lösen?

Es gibt einen Eintrag in STEUCKLISTEN_TEILE, zu dem mehrere Einträge in VORGANG_AUFTRAG_POSITION gehören
zu jedem VORGANG_AUFTRAG_POSITION gibt es genau einen VORGANG_AUFTRAG eintrag gibt

Nun möchte ich den letzten (ist der aktuelle) Eintrag aus der VORGANG_AUFTRAG_POSITION anzeigen (es darf nur genau ein Datensatz pro Teil sein)

Ich komme nur auf das, aber vermute mal, das eine zusätzliche SELECT im LEFT OUTER JOIN auch eine gewisse Bremse ist, aber mit Group und co, komme ich nicht auf das Ergebnis hin ...

SQL-Code:
SELECT VA.NUMMER, VA.STATUS, VAP.ID, VAP.MENGE, T.*
FROM STEUCKLISTEN_TEILE T
LEFT OUTER JOIN VORGANG_AUFTRAG_POSITION VAP ON VAP.ID = (SELECT FIRST 1 VAP.ID FROM VORGANG_AUFTRAG_POSITION VAP WHERE VAP.TEILID = T.ID ORDER BY VAP.ID DESC)
LEFT OUTER JOIN VORGANG_AUFTRAG VA ON VA.ID = VAP.PARENTID
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat