Tengo una situación en la que necesito imponer una restricción única en una columna [atributo] dependiendo de otro valor de columna.Restricción condicional única en Oracle db
Así, por ejemplo, tengo una tabla como la tabla (ID, EID, Nombre, isDeleted)
isDeleted sólo puede tener un valor nulo o 'y' (activa o eliminado), y quiero crear una restricción única en EID, ISDeleted solo cuando ISDeleted = null, ya que no me importa si hay múltiples registros eliminados con el mismo id. Tenga en cuenta que EID puede tener un valor nulo.
Estoy usando Oracle DB para esto.
¿Qué 'else null' do? ¿Insertará un valor nulo O permitirá la inserción de registros duplicados? – D3V
@SantoshPingale - Dado que los índices de Oracle no indexan valores NULL, el 'ELSE NULL' excluirá aquellas filas del índice que permitirán duplicados. –