Можете да създадете уникален функционален индекс
CREATE UNIQUE INDEX idx_dup_active
ON <<table name>>( CASE WHEN is_active = 1
THEN question_no
ELSE NULL
END );
Това се възползва от факта, че индексите на b-дървото на Oracle не съхраняват данни, където данните от листовия блок биха били изцяло NULL.