Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 14/01/2013 10:13:58
- youssef
- Membre
comparaison de deux valeurs qui peuvent être null
Bonjour
je crois que le titre est assez explicite,
on sait bien que la comparaison de n'importe quelle valeur avec une valeur null retourne false,
même pour la comparaison de deux valeurs null.
Mais pour un besoin de rapprochement de deux tables sur plusieurs champs, dont des champs qui peuvent avoir une valeur null
qu'elle est la meilleur façon de le faire ?
exemple :
select t1.*
from t1, t2
where t1.c1 = t2.c1
and t1.c2 = t2.c2
and t1.c3 = t2.c3
and t1.c4 = t2.c4
comment éviter que si t1.c1 is nulle et t2.c1 is null , le résultat de la clause where soit False.
Merci d'avance
Dernière modification par youssef (14/01/2013 10:14:22)
Hors ligne
#2 14/01/2013 10:20:56
- rjuju
- Administrateur
Re : comparaison de deux valeurs qui peuvent être null
Bonjour,
la comparaison de NULL avec une autre valeur renverra toujours NULL. Vous devriez utiliser des LEFT JOIN pour éviter ce problème, où alors la fonction COALESCE mais les performances seront moindres.
Julien.
https://rjuju.github.io/
Hors ligne
#3 14/01/2013 11:10:46
- youssef
- Membre
Re : comparaison de deux valeurs qui peuvent être null
dans mon cas, c'est la fonction COALESCE select ( une fonction que je connaissais pas )
Merci rjuju
Hors ligne
Pages : 1