Le paradoxe de la comparaison des valeurs SQL NULL : distinguer IS NULL et = NULL
Dans le domaine de SQL, le concept de valeurs NULL pose souvent des défis aux développeurs. L'une des difficultés réside dans l'utilisation des opérateurs IS NULL et = NULL pour comparer les valeurs NULL. Même s’ils se ressemblent, leurs résultats sont très différents, ce qui déroute de nombreuses personnes.
Comprendre les différences
Quand utiliser chaque opérateur
Compte tenu de leurs comportements différents :
Exemple
Considérez la forme suivante :
<code>| id | name | |---|---| | 1 | John | | 2 | NULL | | 3 | Mary |</code>
<code>SELECT * FROM table WHERE name = NULL;</code>
Résultat : Aucune ligne n'est renvoyée car = NULL traite NULL comme faux.
<code>SELECT * FROM table WHERE name IS NULL;</code>
Résultat : Renvoie une ligne avec l'identifiant 2, identifiant correctement les valeurs NULL.
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!