MySQLs <=> Operator: Ein tieferes Verständnis
In MySQL ist der <=> Der Operator kommt häufig in Abfragen vor, sein Zweck kann jedoch etwas unklar sein. Ziel dieses Artikels ist es, seine Bedeutung zu klären und seine Anwendungen zu erkunden.
Was ist <=> Betreiber?
Der <=> Der Operator in MySQL ist als „Null-Safe-Equal“-Operator bekannt. Er verhält sich ähnlich wie der reguläre =-Operator, der zwei Werte vergleicht und 0 (ungleich) oder 1 (gleich) zurückgibt. <=> behandelt NULL-Werte unterschiedlich.
NULL-Behandlung
Im Gegensatz zum regulären =-Operator ist <=> behandelt NULL-Werte wie jeden anderen Wert. Das bedeutet, dass ein Vergleich eines Werts mit NULL niemals zu NULL als Ergebnis führt. Stattdessen <=> gibt 0 zurück, wenn die Werte nicht gleich sind, und 1, wenn sie gleich sind.
Zum Beispiel gibt die Abfrage:
WHERE p.name <=> NULL
alle Zeilen zurück, in denen die Spalte „p.name“ entweder NULL oder ist nicht NULL.
Nützlichkeit des <=> Operator
Der <=> Der Operator ist besonders nützlich, wenn beide Operanden NULL-Werte enthalten können und Sie ein konsistentes Vergleichsergebnis benötigen. Darüber hinaus kann es mit vorbereiteten Anweisungen verwendet werden, bei denen der Platzhalter sowohl Skalarwerte als auch NULL akzeptieren kann, ohne dass Änderungen an der Abfrage erforderlich sind.
Verwandte Operatoren
MySQL bietet auch zwei weitere Operatoren zum Vergleich mit NULL: IS NULL und IS NOT NULL. Diese Operatoren sind Teil des ANSI-Standards und werden auch von anderen Datenbanken unterstützt. Sie können als Spezialisierungen des <=> Operator:
Support
Während <=> MySQL-spezifisch ist, führte der SQL:2003-Standard ein ähnliches Prädikat namens IS [NOT] DISTINCT FROM ein. Dieses Prädikat funktioniert genauso wie MySQLs <=> Betreiber.
Das obige ist der detaillierte Inhalt vonWie funktioniert der „Null-Safe Equal Operator' von MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!