Oracle'da, bir COUNT (*) değerini yanıtlamak için NOT NULL sütunundaki bir ikili ağaç dizini kullanılabilir. Çoğu durumda TAM TABLO TARAMASI'ndan daha hızlı olacaktır çünkü dizinler genellikle temel tablolarından daha küçüktür.
Bununla birlikte, düzenli bir ikili ağaç endeksi 157 Mrows ile hala büyük olacaktır. Tablonuz aynı anda güncellenmezse (yani yalnızca toplu yükleme işlemi), bunun yerine bir bitmap dizini kullanmak isteyebilirsiniz.
En küçük bitmap dizini şöyle olur:
CREATE BITMAP INDEX ix ON your_table(NULL);
Boş girişler bir bitmap dizini tarafından dikkate alınır. Ortaya çıkan endeks, normal bir ikili ağaç endeksi veya temel tabloyla karşılaştırıldığında küçük olacaktır (milyon satır başına 20-30 8k blok).
Ortaya çıkan plan aşağıdaki işlemleri göstermelidir:
----------------------------------------------
| Id | Operation | Name |
----------------------------------------------
| 0 | SELECT STATEMENT | |
| 1 | SORT AGGREGATE | |
| 2 | BITMAP CONVERSION COUNT | |
| 3 | BITMAP INDEX FAST FULL SCAN| IX |
----------------------------------------------
Tablonuz aynı anda güncellenirse, benzersiz bir değere sahip bir bitmap dizini bir çekişme noktası olacaktır ve kullanılmamalıdır.