Catégories :

Fonctions d’expressions conditionnelles

NULLIFZERO

Renvoie NULL si l’argument est évalué à 0 ; sinon, renvoie l’argument.

Syntaxe

NULLIFZERO( <expr> )
Copy

Arguments

expr

L’entrée doit être une expression qui correspond à une valeur numérique.

Renvoie

Si la valeur de l’expression d’entrée est 0, cela renvoie NULL. Sinon, cela renvoie la valeur de l’expression d’entrée.

Le type de données de la valeur renvoyée est NUMBER(p, s) (si l’entrée est un nombre à virgule fixe) ou DOUBLE (si l’entrée est un nombre à virgule flottante).

Pour les nombres à virgule fixe, les valeurs exactes de « p » (précision) et « s » (échelle) dépendent de l’expression saisie. Par exemple, si l’expression saisie (d’entrée) est 3.14159, le type de données de la valeur de sortie sera NUMBER(7, 5).

Exemples

Les exemples suivants montrent la sortie de la fonction pour différentes valeurs d’entrée :

SELECT NULLIFZERO(0);
+---------------+
| NULLIFZERO(0) |
|---------------|
|          NULL |
+---------------+
Copy
SELECT NULLIFZERO(52);
+----------------+
| NULLIFZERO(52) |
|----------------|
|             52 |
+----------------+
Copy
SELECT NULLIFZERO(3.14159);
+---------------------+
| NULLIFZERO(3.14159) |
|---------------------|
|             3.14159 |
+---------------------+
Copy