W Oracle można utworzyć indeks oparty na funkcjach, który wykorzystuje fakt, że wartości NULL nie są przechowywane w indeksach b-drzewa. Coś jak
CREATE INDEX TimeSeriesPeriodSs1
ON TimeSeriesPeriod(
(CASE WHEN completionStatus = 'Complete' AND validationStatus = 'Pending'
THEN validationStatus
ELSE NULL
END),
(CASE WHEN completionStatus = 'Complete' AND validationStatus = 'Pending'
THEN completionStatus
ELSE NULL
END)
);