En Oracle Database, el NVL()
La función nos permite reemplazar valores nulos con otro valor.
Sintaxis
La sintaxis es así:
NVL(expr1, expr2)
Si expr1
es nulo, entonces expr2
es regresado. De lo contrario expr1
es devuelto.
Ejemplo
Aquí hay un ejemplo para demostrarlo:
SELECT NVL(null, 'Fish')
FROM DUAL;
Resultado:
Fish
Y esto es lo que sucede cuando el primer argumento es un valor no nulo:
SELECT NVL('Brocoli', 'Fish')
FROM DUAL;
Resultado:
Brocoli
Recuento de argumentos no válidos
Llamar a la función sin pasar ningún argumento da como resultado un error:
SELECT NVL()
FROM DUAL;
Resultado:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
Y pasar demasiados argumentos también provoca un error:
SELECT NVL(1, 2, 3)
FROM DUAL;
Resultado:
SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments"
El NVL2()
Función
Alternativamente, puede usar el NVL2()
función, que le permite especificar un valor diferente para devolver en caso de que el primer argumento no sea nulo.