null-Werte und Indizes

gerade bei Tom Kyte gefunden:

Um bei Abfragen von null-Werten trotzdem einen Index nutzen zu können, wird künstlich ein verbundener Index erstellt:
create index t_idx_new on t(object_id,0);
null-Werte werden nicht in B*Tree-Indizes abgelegt. Daher wird bei Abfragen where column is null kein Index verwendet, auch wenn column indiziert ist.
Da in verbundenen Indezies (concatenated index) null-Werte enthalten sein können (wenn die andere Spalte einen Wert not null enthält), kann der CBO so den Index benutzen

Quelle:
http://tkyte.blogspot.com/2006/01/something-about-nothing.html

siehe auch:
http://tkyte.blogspot.com/2006/01/mull-about-null.html

Kommentare

Beliebte Posts aus diesem Blog

PGA unter Oracle 11g

trunc(sysdate) - nette Spiele mit dem Datum

Datapump - Verzeichnis erstellen