En SQL Server podemos escribir IsNull()
para determinar si un campo es nulo. ¿Hay una función equivalente en PL / SQL?
coalesce
es compatible con Oracle y SQL Server y cumple esencialmente la misma función que nvl
e isnull
. (Hay algunas diferencias importantes, coalesce
puede tomar un número arbitrario de argumentos, y devuelve el primer no nulo. El tipo de retorno para isnull
coincide con el tipo del primer argumento, que no es verdadero para coalesce
, al menos en SQL Server .)
En lugar de ISNULL()
, use NVL()
.
T-SQL:
SELECT ISNULL(SomeNullableField, 'If null, this value') FROM SomeTable
PL / SQL:
SELECT NVL(SomeNullableField, 'If null, this value') FROM SomeTable
También use NVL2
como se NVL2
continuación si desea devolver otro valor desde field_to_check
:
NVL2( field_to_check, value_if_NOT_null, value_if_null )
Uso: ORACLE / PLSQL: FUNCIÓN NVL2
Puede usar la condición if x is not null then...
No es una función. También está la función NVL()
, un buen ejemplo de uso aquí: función NVL ref .