Hallo,

manchmal lässt sich der exists oder where in durch einen join ersetzen und dann bleibt dem Optimizer fast kein Spielraum mehr Quatsch zu machen (selbst bei der ach so fantastischen neuen Query engine)

mfg

Dieter Bender

Zitat Zitat von Fuerchau Beitrag anzeigen
DISTINCT zwingt immer dazu ALLE Sätze zu verarbeiten und dann doppelte rauszuschmeissen.
Ohne DISTINCT entfällt das entfernen.
Aber wer weiß, vielleicht merkt der Optimzer das sogar, weil für die IN-Prüfung ist das Zwischenergebnis egal.

Was hier ggf. beschleunigen kann ist eher EXISTS, da hier bereits 1 Vorkommen ausreicht und nicht alle Sätze benötigt werden.

Aber insofern hat Dieter (wie immer) Recht, dass Zugriffspfade wesentlich bedeutender sind.

Insbesonders bei mandantenfähiger Software wird der Mandant gerne vergessen, da man ja nur einen hat