Montag, Juni 06, 2016

Merge Operationen und überflüssige Spalten.

Vor ein paar Jahren hatte ich hier einen Artikel von Alexander Anokhin verlinkt, in dem erläutert wurde, dass die in der USING clause eines Merge verwendeten Spalten selbst dann in die workarea aufgenommen werden müssen, wenn sie weder im ON noch in der UPDATE-Spaltenliste erscheinen - obwohl es eigentlich durch eine semantische Analyse möglich sein sollte zu bestimmen, dass man diese Spalten gefahrlos ausklammern könnte. Jetzt hat Jonathan Lewis auf einen naheliegenden anderen Aspekt dieses Effekts hingewiesen: dadurch, dass die Spalten in der Projection berücksichtigt werden, ist auch die Verwendung eines Index Fast Full Scans anstelle eines Full Table Scans nicht möglich, wenn zwischenzeitlich Spalten benötigt werden, die für die funktionale Ausführung der Operation eigentlich keine Rolle spielen.

Keine Kommentare:

Kommentar veröffentlichen