NULLIF SQL

En SQL, NULLIF() es una función que se utiliza para comparar dos expresiones y devolver NULL si ambas expresiones son iguales; de lo contrario, devuelve la primera expresión. La función NULLIF() es útil cuando se quiere evitar divisiones por cero o evitar que una expresión retorne un valor no deseado cuando se cumple una condición específica.

  • La función NULLIF() en SQL devuelve NULL si dos expresiones son iguales, de lo contrario, devuelve la primera expresión.

Sintaxis

La sintaxis general de NULLIF() es la siguiente:

NULLIF(expresion1, expresion2)

Donde:

  • expresion1 es la primera expresión que se desea evaluar.
  • expresion2 es la segunda expresión que se compara con la primera.

Si expresion1 es igual a expresion2, entonces la función NULLIF() devolverá NULL. Si expresion1 es diferente de expresion2, entonces la función devolverá expresion2.


Ejemplo

La función NULLIF() compara las dos expresiones pasadas como argumentos: ‘Hola!’ y ‘Hola!’. Si ambas expresiones son iguales, NULLIF() devolverá NULL; de lo contrario, devolverá la primera expresión (‘Hola!’ en este caso).

En este caso, ambas expresiones son iguales (‘Hola!’), por lo tanto, NULLIF() devolverá NULL. El resultado de la consulta será: NULL

SELECT NULLIF('Hola!', 'Hola!'); 

Esto significa que la función NULLIF() reemplaza ‘Hola!’ por NULL debido a que ambas expresiones son idénticas. Si hubieran sido diferentes, el resultado habría sido ‘Hola!’.

Compara dos expresiones.

La función NULLIF() compara las dos expresiones pasadas como argumentos: ‘Hola!’ y ‘Mundo!’. Si ambas expresiones son iguales, NULLIF() devolverá NULL; de lo contrario, devolverá la primera expresión ( ‘Hola!’ en este caso).

En este caso, las dos expresiones son diferentes (‘Hola’ y ‘Mundo!’), por lo tanto, NULLIF() devolverá la primera expresión, que es ‘Hola!’. El resultado de la consulta será: ‘Hola!’

SELECT NULLIF('Hola', 'Mundo!'); 

Esto significa que la función NULLIF() no reemplaza ninguna de las expresiones, ya que no son iguales, y devuelve la primera expresión, que es ‘Hola!’

Compara dos expresiones:

La función NULLIF() compara las dos expresiones pasadas como argumentos: ‘2022-11-01’ ‘2022-22-01’. Si ambas expresiones son iguales, NULLIF() devolverá NULL; de lo contrario, devolverá la primera expresión ( ‘2022-11-01’ en este caso).

En este caso, ambas expresiones son iguales (‘2022-11-01’), por lo tanto, NULLIF() devolverá NULL.

  • El resultado de la consulta será: NULL
SELECT NULLIF('2022-11-01', '2022-11-01'); 

Esto significa que la función NULLIF() reemplaza ‘2022-11-01’ por NULL debido a que ambas expresiones son idénticas. Si las expresiones hubieran sido diferentes, el resultado habría sido ‘2022-11-01’.

La función NULLIF() es útil para reemplazar valores específicos por NULL cuando se cumplen ciertas condiciones. En este caso, dado que ambas expresiones son iguales, NULL es el resultado devuelto.


Valores de Parámetros

ParámetroDescripción
expr1, expr2Requerido. Las dos expresiones a comparar.

Detalles Técnicos

Trabaja con SQL Server (a partir de 2008), Azure SQL Database, Azure SQL Data Warehouse, Parallel Data Warehouse