U kunt een unieke functiegebaseerde index maken
CREATE UNIQUE INDEX idx_dup_active
ON <<table name>>( CASE WHEN is_active = 1
THEN question_no
ELSE NULL
END );
Dit maakt gebruik van het feit dat Oracle b-tree-indexen geen gegevens opslaan waar de bladblokgegevens volledig NULL zouden zijn.