Heim >Datenbank >MySQL-Tutorial >Was ist der Unterschied zwischen „=' und „IS NULL' in SQL-Abfragen?

Was ist der Unterschied zwischen „=' und „IS NULL' in SQL-Abfragen?

Susan Sarandon
Susan SarandonOriginal
2024-12-07 05:56:11731Durchsuche

What's the Difference Between

Den Unterschied zwischen „=" und „IS NULL" in SQL verstehen

Beim Erstellen von SQL-Abfragen ist es wichtig, die Unterschiede zwischen der Zuweisung eines Werts von „ null“ mithilfe des Operators „=" und Vergleichen einer Spalte mit „NULL“ mithilfe des Operators „IS NULL“. Operator.

Zuweisen von Nullwerten mit „="

Der Operator „="" kann verwendet werden, um eine Spalte auf den Nullwert zu setzen. Zum Beispiel das Folgende Die Abfrage weist der Spalte „Alter“ der Tabelle „Personen“ den Nullwert zu:

UPDATE Persons SET Age = NULL
WHERE Name = 'John Doe';

In diesem Fall wird der Operator „=" verwendet, um festzulegen Spalte „Alter“ für den Datensatz, wobei die Spalte „Name“ „John Doe“ gleich null ist.

Vergleich von Spalten mit NULL mit „IS NULL“

Im Gegensatz dazu Zur Zuweisung wird der Operator „IS NULL“ in SQL-Abfragen verwendet, um zu bestimmen, ob eine Spalte den Nullwert enthält. Er gibt einen booleschen Wert zurück, der angibt, ob die Spalte null ist oder nicht Die Abfrage wählt alle Zeilen aus der Tabelle „Personen“ aus, in denen die Spalte „Alter“ null ist:

SELECT *
FROM Persons
WHERE Age IS NULL;

Beachten Sie, dass die Verwendung von „Alter = NULL“ in einer WHERE-Klausel ungültig ist und aufgrund von Nullwerten immer „Falsch“ zurückgibt können nicht direkt auf Gleichheit verglichen werden. Stattdessen muss für solche Vergleiche der Operator „IS NULL“ verwendet werden.

Hauptunterschiede

  • Der Operator „=" wird verwendet, um einen Nullwert zuzuweisen zu einer Spalte, während „IS NULL“ verwendet wird, um eine Spalte mit Null zu vergleichen.
  • „Alter = NULL“ ist kein gültiger Ausdruck in WHERE Klauseln, wobei „Alter IS NULL“ korrekt ist.
  • „IS NULL“ gibt einen booleschen Wert zurück, der angibt, ob der verglichene Wert null ist oder nicht, während „=" für die Zuweisung verwendet wird.

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen „=' und „IS NULL' in SQL-Abfragen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn