- Catégories :
NVL2¶
Retourne des valeurs selon que la première entrée est NULL :
Si
expr1est NOT NULL, alors NVL2 renvoieexpr2.Si
expr1est NULL, alors NVL2 renvoieexpr3.
Syntaxe¶
NVL2( <expr1> , <expr2> , <expr3> )
Arguments¶
expr1L’expression à vérifier pour savoir s’il s’agit de NULL.
expr2Si
expr1n’est pas NULL, cette expression sera évaluée et sa valeur sera renvoyée.expr3Si
expr1est NULL, cette expression sera évaluée et sa valeur sera renvoyée.
Notes sur l’utilisation¶
Les trois expressions doivent avoir le même type de données (ou compatibles).
Détails du classement¶
La spécification de classement pour
expr1est ignorée, car tout ce qui importe dans cette expression est de savoir s’il s’agit ou non d’une propriété NULL.Les spécifications de classement pour
expr2etexpr3doivent être compatibles.La valeur renvoyée par la fonction a le classement le plus élevé -préséance parmi
expr2etexpr3.
Exemples¶
Si a n’est pas null, renvoyez b, sinon renvoyez c :
SELECT a, b, c, NVL2(a, b, c) FROM i2; --------+--------+--------+---------------+ A | B | C | NVL2(A, B, C) | --------+--------+--------+---------------+ 0 | 5 | 3 | 5 | 0 | 5 | [NULL] | 5 | 0 | [NULL] | 3 | [NULL] | 0 | [NULL] | [NULL] | [NULL] | [NULL] | 5 | 3 | 3 | [NULL] | 5 | [NULL] | [NULL] | [NULL] | [NULL] | 3 | 3 | [NULL] | [NULL] | [NULL] | [NULL] | --------+--------+--------+---------------+