Re: ErgänzungGeschrieben von otto-mueller on Februar 20, 2004 um 16:24: Als Antwort auf Re: jetzt geht es besser geschrieben von otto-mueller on Februar 20, 2004 um 16:20: Die Bediengungsfelder sind indiziert! Otto : Hallo Alex, hallo Axel, : ich kenne mich auch nicht mit DB2/AS400 aus. Da die Datenbank eine DB2 auf AS400 ist, muß ich mich damit abfinden. : >Axel: "Gibt es da keinen richtigen Optimizer?)" : Was ist ein Optimizer? Kannst du mir ein Beispiel davon geben, z.B. bei MySQL oder SAP-DB? : Was der Reihenfolge der Prädikate bei der Abarbeitung von SELECT angeht, denke ich, daß es doch allgemein gilt, die Rheinfolge richtig zu wählen oder? : Bei einer logischen Verknüpfung werden doch die Bediengungen immer von links nach rechts der Rheinfolge nach auf ihre Wahrheit geprüft. : In meiner ersten Abfrage: : wird zuerst in der Tabelle Auftrag im Feld Kunde nach 'Otto Müller' gesucht, wenn es gefunden wurde - also erste Bediengung WAHR ist, erst danach wird die zweite Bediengung Land = 'Deutschland' nach ihrer Wahrheit geprüft. : Deshalb ist diese Rheifolge von der logischen Verknüpfung nicht hilfreich. : In meiner zweiten Abfrage: : wird zuerst in der Tabelle Auftrag im Feld Land nach 'Deutschland'gesucht und damit wird der Suchbereich schonmal auf "Deutschland" eingegrenzt, wenn es gefunden wurde - also erste Bediengung WAHR ist, erst danach wird die zweite Bediengung Kunde = 'Otto Müller' nach ihrer Wahrheit geprüft. Bei der Prüfung der zweiten Bediengung muß die Abfrage nur in der Untermenge "Land=Deutschland" von der Menge "Auftrag" zu suchen. Somit braucht die Abfrage weniger Zeit, das Ergebnis auszugeben. : Gruß, Otto
: : da ich DB2/400 nicht kenne, muß ich doch einmal nachfragen: Die Reihenfolge der Prädikate bestimmt auf der AS/400 die Abarbeitung des SELECT-Befehls? (Gibt es da keinen richtigen Optimizer?) Sind die drei wesentlichen Abfragekriterien eigentlich Teil eines oder mehrere Indizes? : : MfG : : Axel Pürner
Antworten:
|