NULLIF |
Nulle si |
| Oracle Database SQL |
Oracle 9i ou supérieure |
Syntaxe
Paramètres
| Nom |
Description |
| expr1 |
Ce paramètre permet d'indiquer la première expression ou valeur à comparer. |
| expr2 |
Ce paramètre permet d'indiquer la deuxième expression ou valeur à comparer avec la première. |
Description
Cette fonction permet de comparer deux expressions et retourne NULL si elles sont égales, ou la première expression sinon. Elle est utile pour éviter des divisions par zéro ou pour simplifier certaines logiques conditionnelles.
Remarques
- La fonction NULLIF compare deux expressions et retourne NULL si elles sont strictement égales, ce qui permet d'éviter d'avoir une valeur indésirable dans les calculs
ou les résultats.
- Si les deux expressions comparées ne sont pas égales, la fonction retourne la première expression, permettant ainsi de conserver la valeur utile dans le flux logique
d'une requête.
- NULLIF est souvent utilisée dans les expressions conditionnelles, notamment pour éviter des erreurs comme la division par zéro en renvoyant NULL lorsque le diviseur
est égal à zéro.
- Elle peut aussi simplifier les requêtes en remplaçant des cas complexes de conditions CASE ou IF par une expression plus concise et lisible.
- Cette fonction est particulièrement utile dans les opérations arithmétiques où une certaine valeur doit être exclue du calcul, car retourner NULL permet souvent
d'ignorer cette valeur dans les agrégations.
- En cas de comparaison entre des chaînes de caractères, NULLIF peut être utilisée pour filtrer ou exclure des valeurs spécifiques en retournant NULL lorsqu'une
correspondance est détectée.
- NULLIF agit de façon stricte, c'est-à-dire qu'elle compare les deux expressions telles quelles, sans conversion automatique, ce qui signifie que les types doivent
être compatibles pour éviter des erreurs.
- Elle est très utile dans les rapports et analyses où certaines valeurs doivent être traitées comme manquantes ou non pertinentes, en les convertissant explicitement
en NULL.
- La fonction peut aussi servir dans des jointures ou des clauses WHERE pour filtrer les résultats en fonction de critères dynamiques basés sur l'égalité des
expressions.
- Dans un contexte d'optimisation SQL, l'utilisation de NULLIF peut réduire la complexité des requêtes en éliminant la nécessité de multiples conditions
imbriquées.
- Cette fonction fait partie des fonctions standard disponibles depuis Oracle 9i, ce qui garantit sa compatibilité avec la majorité des bases Oracle utilisées en
production aujourd'hui.
- Enfin, NULLIF s'intègre naturellement dans les expressions analytiques, permettant une manipulation fine des données, notamment en combinaison avec d'autres fonctions
de gestion des valeurs nulles telles que NVL ou COALESCE.
Dernière mise à jour : Dimanche, le 29 Juin 2025