Maison > Article > base de données > Comment utiliser l'opérateur '<=>' dans MySQL
Cet article vous présentera comment utiliser l'opérateur "<=>" dans MySQL. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.
Question :
Je regardais le code d'un développeur précédent et j'ai vu
?1WHERE p.name <=>NULL
Que signifie le symbole <=> dans cette instruction de requête ? Est-ce la même chose que le signe = ? Ou est-ce une erreur grammaticale ? Mais aucune erreur ou exception n'est affichée. Je connais déjà les symboles tels que <> = != dans MySQL.
Meilleure réponse :
La même chose que le signe =
Comme l'opérateur = régulier, deux valeurs sont comparées, et le résultat est 0 (différent) ou 1 (égal) ; en d'autres termes : 'A'<=>'B' obtient 0 et 'a'<=>'a' obtient 1.
2. La différence entre l'opérateur = et l'opérateur = La différence entre
et l'opérateur = est que la valeur de NULL n'a aucune signification. Par conséquent, l’opérateur = ne peut pas traiter NULL comme un résultat valide. Donc : veuillez utiliser <=>,
'a' <=> Contrairement à l'opérateur =, la règle pour l'opérateur = est 'a'=NULL et le résultat est NULL. Même NULL = NULL, le résultat est NULL. À propos, presque tous les opérateurs et fonctions de MySQL fonctionnent de cette façon, car la comparaison avec NULL n'a fondamentalement aucun sens.
Utilisations
Lorsque deux opérandes peuvent contenir NULL, vous avez besoin d'une instruction cohérente.
?1...WHERE col_a <=> ...
L'espace réservé ici peut être une constante ou NULL, lorsque l'opération <=> vous n'avez pas besoin d'apporter de modifications à l'instruction de requête.
Opérateurs associés
En plus de <=>, il existe deux autres opérateurs utilisés pour comparer une certaine valeur avec NULL, qui est IS NULL et IS NOT NUL. Ils font partie de la norme ANSI et peuvent donc être utilisés dans d'autres bases de données. Et <=> ne peut être utilisé que dans MySQL.
Vous pouvez considérer <=> comme un dialecte dans MySQL.
?12'a' IS NULL ==>'a' <=>NULL'a' IS NOT NULL ==>NOT('a' <=>NULL)
Selon cela, vous pouvez modifier ce segment d'instruction de requête pour qu'il soit plus portable :
?1WHERE p.name IS NULL
Recommandations associées : "Tutoriel mysql 》
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!