Einzelnen Beitrag anzeigen

TBx
(Administrator)

Registriert seit: 13. Jul 2005
Ort: Stadthagen
1.891 Beiträge
 
Delphi 12 Athens
 
#7

Re: Langsamer Left Outer Join

  Alt 29. Jul 2007, 18:16
Hallo!
Zitat von Dumpfbacke:
um eine Ergebnis über mehrere Tabellen zu bekommen benutze ich immer Left Outer Join.
Also, wenn Du wirklich immer mit dem LEFT OUTER JOIN arbeitest, solltest Du Dir dringend die Bedeutung von JOINS angucken

Zitat von Dumpfbacke:
Es sind natütlich Indexe auf den entsprechenden Feldern vorhanden.
Es sind nur Indexe in der RIGHT-Table sinnvoll, die LEFT-Table wird ja sowieso kompßlett durchlaufen

Zitat von Dumpfbacke:
Wenn ich jedoch zwei Bedingungen angebe, so dauert es immer sehr lange.
Das ist ganz klar, für jede der Bedingungen wird die Mastertabelle komplett durchlaufen und versucht, eine Verbindung zur gejointen Tabelle herzustellen

Zitat von Dumpfbacke:
Kann man hier etwas verbessen ?
Bei verwendung des LEFT OUTER JOIN: Nein.
Du solltest überprüfen, ob dieser Join die richtige Wahl ist.
Verrate uns hier doch einmal, was Du erreichen willst, wir helfen Dir gerne weiter.

Merke: Der LEFT OUTER JOIN ist der Performance-Killer schlechthin.

Gruß Thomas

PS: Möchtest Du z.B. alle Datensätze aus TabelleA haben, die eine Entsprechung in TabelleB in FELD2 oder FELD3 haben, so wäre der INNER JOIN das Mittel der Wahl.
Thomas Breitkreuz
Gruß Thomas
- Admin DelphiPRAXIS
- Admin Delphi-Treff
- Embarcadero MVP
  Mit Zitat antworten Zitat