Problem:
Sie möchten Datensätze ohne NULL in einer Spalte finden.
Beispiel:
Unsere Datenbank hat eine Tabelle namens product
mit Daten in drei Spalten:id
, name
und price
.
id | Name | Preis |
---|---|---|
1 | Butter | NULL |
2 | Milch | 2,35 |
3 | Brot | 3.25 |
4 | Käse | NULL |
Lassen Sie uns die Namen und Preise von Produkten finden, die einen Preis haben (ohne NULL). Verwenden Sie dazu den Operator IS NOT NULL.
Lösung:
SELECT name, price FROM product WHERE price IS NOT NULL;
Hier ist das Ergebnis der Abfrage:
name | Preis |
---|---|
Milch | 2,35 |
Brot | 3.25 |
Dies gibt nur Datensätze ohne NULL in der Spalte zurück, sodass nur die Namen und Preise von Milch und Brot vorhanden sind. Butter und Käse haben keine Preise (die Spalte price
ist NULL), sodass Sie sie nicht sehen.
Diskussion:
Um Datensätze ohne NULL in einer Spalte anzuzeigen, verwenden Sie den Operator IS NOT NULL. Sie benötigen lediglich den Namen der Spalte (oder einen Ausdruck) und den Operator IS NOT NULL (in unserem Beispiel ist der price IS NOT NULL
). ). Fügen Sie diese Bedingung in die WHERE-Klausel ein (in unserem Beispiel WHERE price IS NOT NULL
). ), wodurch Zeilen gefiltert werden.
Wenn die Bedingung wahr ist, bedeutet dies, dass die Spalte keine NULL speichert. Die Zeile wird zurückgegeben, wenn sie einen Wert in dieser Spalte enthält (die Spalte ist nicht NULL). Von oben gibt die Abfrage nur zwei Produkte zurück, Milch und Brot, weil sie Werte in price
haben .