

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Fonction NULLIF
<a name="NULLIF_function"></a>

Compare les deux arguments et renvoie null si les arguments sont égaux. S'ils ne sont pas égaux, le premier argument est renvoyé.

## Syntaxe
<a name="NULLIF_function-synopsis"></a>

L’expression NULLIF compare les deux arguments et renvoie la valeur nulle si les arguments sont égaux. S'ils ne sont pas égaux, le premier argument est renvoyé. Cette expression est l’inverse de l’expression NVL ou COALESCE.

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

## Arguments
<a name="NULLIF_function-arguments"></a>

 *expression1, expression2*   
Colonnes ou expressions cible qui sont comparées. Le type de retour est le identique au type de la première expression. 

## Exemples
<a name="NULLIF_function-examples"></a>

Dans l’exemple suivant, la requête renvoie la chaîne `first` car les arguments ne sont pas égaux.

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

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

Dans l’exemple suivant, la requête renvoie `NULL` car les arguments littéraux de la chaîne sont égaux.

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

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

Dans l’exemple suivant, la requête renvoie `1` car les arguments entiers ne sont pas égaux.

```
SELECT NULLIF(1, 2);

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

Dans l’exemple suivant, la requête renvoie `NULL` car les arguments entiers sont égaux.

```
SELECT NULLIF(1, 1);

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

Dans l’exemple suivant, la requête renvoie la valeur nulle lorsque les valeurs LISTID et SALESID correspondent :

```
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)
```