AW: Index wird teilweise nicht benutzt
Nachtrag
Die beiden Ausführungspläne zeigen jedenfalls, dass der 2. Plan viel besser ist. Also wie kann man den Optimizer dazu bringen, dem 2. Plan zu folgen ohne die Bedingung wegzulssen? Den (Ausführungs)Plan angeben http://www.firebirdfaq.org/faq224/ Unbehilfliche Indizes löschen (Feld1) oder wenn der Index an anderer Stelle gebraucht wird, die Abfrage so formulieren, dass der Index nicht greifen kann: http://www.firebirdfaq.org/faq158/ Außerdem: Warum verwendest Du "Group by", ohne eine Aggregatfunktion? Falls es um die Unterdrückung doppelter Ergebnisssätze geht, überprüfe Dein Join Kriterium. Wenn eine Bedingung fehlt, kann es zu Permutationen führen, die mehrfachen Datensätze wären ein Indiz dafür. Das zieht natürlich auch die Performance runter und "verwirrt" ggF. den Optimizer. |
AW: Index wird teilweise nicht benutzt
Zitat:
Code:
Tabelle 1:
Feld2,Feld3,Feld4 Tabelle2: die JOIN Felder und das Feld9 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz