Catégories :

Fonctions d’expressions conditionnelles

IFNULL

Si expr1 vaut NULL, renvoie expr2, sinon renvoie expr1.

Alias

NVL

Syntaxe

IFNULL( <expr1> , <expr2> )
Copy

Arguments

expr1

Une expression générale.

expr2

Une expression générale.

Notes sur l’utilisation

  • Si possible, transmettez des arguments du même type. Évitez de transmettre des arguments de types différents.

  • Si l’un des arguments est un nombre, la fonction contraint les arguments de type chaîne non numérique (par exemple 'a string') et les arguments de type chaîne qui ne sont pas des constantes au type NUMBER(18,5).

    Pour les arguments numériques de type chaîne qui ne sont pas des constantes, si NUMBER(18,5) n’est pas suffisant pour représenter la valeur numérique, vous devez convertir l’argument en un type qui peut représenter la valeur.

  • L’une ou l’autre expression peut inclure une instruction SELECT contenant des opérateurs Set, tels que UNION, INTERSECT, EXCEPT et MINUS. Lorsque vous utilisez des opérateurs Set, assurez-vous que les types de données sont compatibles. Pour plus d’informations, voir Notes générales sur l’utilisation dans la rubrique Opérateurs Set.

Détails du classement

Exemples

SELECT a, b, IFNULL(a,b), IFNULL(b,a) FROM i;

--------+--------+-------------+-------------+
   a    |   b    | ifnull(a,b) | ifnull(b,a) |
--------+--------+-------------+-------------+
 0      | 5      | 0           | 5           |
 0      | [NULL] | 0           | 0           |
 [NULL] | 5      | 5           | 5           |
 [NULL] | [NULL] | [NULL]      | [NULL]      |
--------+--------+-------------+-------------+
Copy