IS [NOT] NULL (Entity SQL)
判斷查詢運算式是否為 null。
expression IS [ NOT ] NULL
Arguments
- expression
任何有效的查詢運算式。 不可為集合、不可有集合成員,也不可為集合型別屬性的記錄型別。
- NOT
否定 IS NULL 的 EDM.Boolean 結果。
傳回值
如果 expression 傳回 null 則為 true;否則為 false。
備註
使用 IS NULL 判斷外部連結的項目是否為 null:
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
使用 IS NULL 判斷成員是否有實際值:
select c from LOB.Customer as c where c.DOB is not null
下表所示為 IS NULL 在某些模式上的行為。 所有例外狀況都是在叫用提供者之前從用戶端擲回:
模式 | 行為 |
---|---|
null IS NULL |
傳回 true。 |
TREAT (null AS EntityType) IS NULL |
傳回 true。 |
TREAT (null AS ComplexType) IS NULL |
擲回錯誤。 |
TREAT (null AS RowType) IS NULL |
擲回錯誤。 |
EntityType IS NULL |
傳回 true 或 false。 |
ComplexType IS NULL |
擲回錯誤。 |
RowType IS NULL |
擲回錯誤。 |
範例
以下 Entity SQL 查詢使用 IS NOT NULL 運算子來判斷查詢運算式是否不為 null。 此查詢是以 AdventureWorks Sales Model 為依據。 若要編譯及執行此查詢,請遵循以下步驟:
將下列查詢當成引數傳遞至
ExecuteStructuralTypeQuery
方法:
SELECT VALUE product FROM AdventureWorksEntities.Products
AS product WHERE product.Color IS NOT NULL