Sie können die IS NULL-Suchbedingungen verwenden, um Spaltenwerte mit NULL zu vergleichen, und um sie auszuwählen bzw. eine bestimmte Aktion je nach Ergebnis des Vergleichs auszuführen. Nur Spalten, die den Wert TRUE zurückgeben, werden ausgewählt oder bewirken die beabsichtigte Aktion, diejenigen mit FALSE oder UNKNOWN nicht.
Im nachfolgenden Beispiel werden nur die Zeilen ausgewählt, für die "UnitPrice" geringer als 15 Dollar oder NULL ist:
SELECT Quantity, UnitPrice FROM Products WHERE UnitPrice < 15 OR UnitPrice IS NULL; |
Das Ergebnis des Vergleichs eines Wertes mit NULL ist UNKNOWN, da nicht zu ermitteln ist, ob NULL gleich (oder ungleich) einem gegebenen Wert oder einem anderen NULL-Wert ist.
Es gibt Umstände, die niemals TRUE zurückgeben, sodass Abfragen, die diese Bedingungen verwenden, keine Ergebnismengen zurückgeben. Der folgende Vergleich kann beispielsweise nie als TRUE ermittelt werden, da NULL bedeutet, dass ein unbekannter Wert vorliegt.
WHERE column1 > NULL |
Diese Logik gilt auch, wenn Sie zwei Spaltennamen in einer WHERE-Klausel verwenden, d.h. wenn Sie zwei Tabellen mit einem
Join verbinden. Eine Klausel, die die Bedingung WHERE column1 = column2
enthält, gibt keine Zeilen zurück, bei denen die Spalten NULL enthalten.
Sie können NULL oder Nicht-NULL auch mit diesen Mustern finden:
WHERE column_name IS NULL |
WHERE column_name IS NOT NULL |
Zum Beispiel:
WHERE advance < $5000 OR advance IS NULL |
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2013, SAP AG oder ein SAP-Konzernunternehmen. - SAP Sybase SQL Anywhere 16.0 |