Maison >base de données >tutoriel mysql >Comment tester efficacement l'inégalité des colonnes nullables dans SQL ?
Comprendre l'inégalité nulle
Dans le domaine de SQL, l'égalité des valeurs NULL pose un défi unique. Le consensus suggère d'utiliser l'expression "where ((A=B) OR (A IS NULL AND B IS NULL))" pour tester l'égalité entre les colonnes nullables. Cependant, cette approche pose question lors du test des inégalités.
Selon la logique ternaire, qui considère NULL comme une valeur inconnue, l'expression d'inégalité « où (A<>B) » est suffisante pour évaluer l'inégalité de colonnes nullables. Cette logique considère que l'égalité des valeurs inconnues est inconnue, donc le résultat n'est pas VRAI.
Par exemple, considérons les scénarios suivants :
Conditions supplémentaires
L'expression "WHERE ((A <> ; B) OR (A IS NOT NULL AND B IS NULL) OR (A IS NULL AND B IS NOT NULL))" est une approche alternative qui vérifie explicitement tous les possibles. combinaisons de valeurs NULL et non NULL. Cependant, cela n'est pas nécessaire dans les situations où le but est d'évaluer l'inégalité des colonnes nullables.
En conclusion, pour les colonnes nullables, l'expression "où (A<>B)" est suffisante pour évaluer leur inégalité. , car NULL est considéré comme une valeur inconnue en logique ternaire.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!