SQL NULL-Wert

NULL-Werte sind fehlende unbekannte Daten.

Standardmäßig können die Spalten einer Tabelle NULL-Werte speichern.

Dieses Kapitel erläutert die Operatoren IS NULL und IS NOT NULL.

SQL NULL-Wert

Wenn eine Spalte in einer Tabelle optional ist, können wir neue Einträge einfügen oder bestehende Einträge aktualisieren, ohne einen Wert in diese Spalte hinzuzufügen. Dies bedeutet, dass dieses Feld mit einem NULL-Wert gespeichert wird.

Die Verarbeitung von NULL-Werten ist anders als bei anderen Werten.

NULL wird als Platzhalter für unbekannte oder unangemessene Werte verwendet.

Anmerkung:NULL kann nicht mit 0 verglichen werden; sie sind nicht äquivalent.

SQL NULL-Wertbehandlung

Sehen Sie sich die folgende "Persons"-Tabelle an:

ID Nachname Vorname Adresse Stadt
1 Adams John   London
2 Bush George Fifth Avenue New York
3 Carter Thomas   Peking

Angenommen, die Spalte "Adresse" im "Persons"-Table ist optional. Dies bedeutet, dass wenn ein Eintrag in die Spalte "Adresse" ohne Wert eingefügt wird, die Spalte "Adresse" den Wert NULL speichert.

Dann wie testen wir NULL-Werte?

Man kann NULL-Werte nicht mit Vergleichsoperatoren wie =, < oder <> testen.

Wir müssen die Operator IS NULL und IS NOT NULL verwenden.

SQL IS NULL

Wie wählen wir nur die Einträge aus, die im "Adresse"-Feld NULL-Werte haben?

Wir müssen den Operator IS NULL verwenden:

SELECT Nachname,Vorname,Adresse FROM Personen
WHERE Adresse IS NULL

Ergebnisliste:

Nachname Vorname Adresse
Adams John  
Carter Thomas  

Tipp:Verwenden Sie immer IS NULL, um NULL-Werte zu finden.

SQL IS NOT NULL

Wie wählen wir die Einträge aus, die im "Adresse"-Feld keine NULL-Werte haben?

Wir müssen den Operator IS NOT NULL verwenden:

SELECT Nachname,Vorname,Adresse FROM Personen
WHERE Adresse IS NOT NULL

Ergebnisliste:

Nachname Vorname Adresse
Bush George Fifth Avenue

In dem nächsten Abschnitt lernen wir die Funktionen ISNULL(), NVL(), IFNULL() und COALESCE() kennen.