IS [NOT] NULL (Entity SQL)
Ermittelt, ob ein Abfrageausdruck den Wert NULL hat.
expression IS [ NOT ] NULL
Argumente
- expression
Ein gültiger Abfrageausdruck. Dieser darf keine Auflistung sein oder über Auflistungsmember oder einen Datensatztyp mit Auflistungstypeigenschaften verfügen.
- NOT
Negiert das Boolean -Ergebnis von IS [NOT] NULL .
Rückgabewert
true wenn expression NULL zurückgibt, andernfalls false .
Hinweise
Verwenden Sie IS NULL , um zu ermitteln, ob das Element einer äußeren Verknüpfung den Wert NULL hat:
select c
from LOB.Customers as c left outer join LOB.Orders as o
on c.ID = o.CustomerID
where o is not null and o.OrderQuantity = @x
Verwenden Sie IS NULL , um zu ermitteln, ob ein Member über einen tatsächlichen Wert verfügt:
select c from LOB.Customer as c where c.DOB is not null
In der folgenden Tabelle wird das Verhalten von IS NULL für einige Muster dargestellt. Alle Ausnahmen werden von der Clientseite ausgelöst, bevor der Anbieter aufgerufen wird:
Muster | Verhaltensweise |
---|---|
null IS NULL |
Gibt true zurück. |
TREAT (null AS EntityType) IS NULL |
Gibt true zurück. |
TREAT (null AS ComplexType) IS NULL |
Löst einen Fehler aus. |
TREAT (null AS RowType) IS NULL |
Löst einen Fehler aus. |
EntityType IS NULL |
Gibt true oder false zurück. |
ComplexType IS NULL |
Löst einen Fehler aus. |
RowType IS NULL |
Löst einen Fehler aus. |
Beispiel
In der folgenden Entity SQL -Abfrage wird der IS NOT NULL -Operator verwendet, um zu ermitteln, ob ein Abfrageausdruck nicht den Wert NULL hat. Die Abfrage basiert auf dem AdventureWorks Sales-Modell. Führen Sie folgende Schritte aus, um diese Abfrage zu kompilieren und auszuführen:
Verwenden Sie das Verfahren unter Gewusst wie: Ausführen einer Abfrage, die StructuralType-Ergebnisse zurückgibt (EntityClient).
Übergeben Sie die folgende Abfrage als Argument an die
ExecuteStructuralTypeQuery
-Methode:
SELECT VALUE product FROM AdventureWorksEntities.Product
AS product WHERE product.Color IS NOT NULL
Die Ausgabe ist im Folgenden dargestellt:
ProductID: 317
Name: LL Crankarm
ProductNumber: CA-5965
MakeFlag: False
ProductID: 318
Name: ML Crankarm
ProductNumber: CA-6738
MakeFlag: False
ProductID: 319
Name: HL Crankarm
ProductNumber: CA-7457
MakeFlag: False
ProductID: 320
Name: Chainring Bolts
ProductNumber: CB-2903
MakeFlag: False
ProductID: 321
Name: Chainring Nut
ProductNumber: CN-6137
MakeFlag: False
...