

 Amazon Redshift dejará de admitir la creación de nuevas UDF de Python a partir del parche 198. Las UDF de Python existentes seguirán funcionando hasta el 30 de junio de 2026. Para obtener más información, consulte la [publicación del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# Función NULLIF
<a name="r_NULLIF_function"></a>

## Sintaxis
<a name="r_NULLIF_function-synopsis"></a>

La expresión NULLIF compara dos argumentos y devuelve un valor nulo si los argumentos son iguales. Si no son iguales, se devuelve el primer argumento. Esta expresión realiza lo contrario a lo que realiza la expresión NVL o COALESCE.

```
NULLIF ( expression1, expression2 )
```

## Argumentos
<a name="r_NULLIF_function-arguments"></a>

 *expresión1, expresión2*   
Las columnas o expresiones de destino que se comparan. El tipo de retorno es el mismo que el tipo de la primera expresión. El nombre predeterminado de la columna del resultado NULLIF es el nombre de columna de la primera expresión.

## Ejemplos
<a name="r_NULLIF_function-examples"></a>

En el ejemplo siguiente, la consulta devuelve la cadena `first` porque los argumentos no son iguales.

```
SELECT NULLIF('first', 'second');

case
-------
first
```

En el ejemplo siguiente, la consulta devuelve `NULL` porque los argumentos literales de la cadena son iguales.

```
SELECT NULLIF('first', 'first');

case
-------
NULL
```

En el ejemplo siguiente, la consulta devuelve `1` porque los argumentos de enteros no son iguales.

```
SELECT NULLIF(1, 2);

case
-------
1
```

En el ejemplo siguiente, la consulta devuelve `NULL` porque los argumentos de enteros son iguales.

```
SELECT NULLIF(1, 1);

case
-------
NULL
```

En el siguiente ejemplo, la consulta devuelve valores nulos cuando los valores LISTID y SALESID coinciden:

```
select nullif(listid,salesid), salesid
from sales where salesid<10 order by 1, 2 desc;

listid  | salesid
--------+---------
     4  |       2
     5  |       4
     5  |       3
     6  |       5
     10 |       9
     10 |       8
     10 |       7
     10 |       6
        |       1
(9 rows)
```

Puede usar NULLIF para asegurarse de que las cadenas vacías se devuelvan siempre como valores nulos. En el siguiente ejemplo, la expresión NULLIF devuelve un valor nulo o una cadena que tiene al menos un carácter.

```
insert into category
values(0,'','Special','Special');

select nullif(catgroup,'') from category
where catdesc='Special';

catgroup
----------
null
(1 row)
```

NULLIF ignora los espacios en blanco a la derecha. Si una cadena no está vacía porque contiene espacios en blanco, NULLIF seguirá devolviendo un valor nulo:

```
create table nulliftest(c1 char(2), c2 char(2));

insert into nulliftest values ('a','a ');

insert into nulliftest values ('b','b');


select nullif(c1,c2) from nulliftest;
c1
------
null
null
(2 rows)
```