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

傳回 truefalse

ComplexType IS NULL

擲回錯誤。

RowType IS NULL

擲回錯誤。

範例

以下 Entity SQL 查詢使用 IS NOT NULL 運算子來判斷查詢運算式是否不為 null。 此查詢是以 AdventureWorks Sales Model 為依據。 若要編譯及執行此查詢,請遵循以下步驟:

  1. 按照 HOW TO:執行可傳回 StructuralType 結果的查詢 (EntityClient) 中的程序進行。

  2. 將下列查詢當成引數傳遞至 ExecuteStructuralTypeQuery 方法:

SELECT VALUE product FROM AdventureWorksEntities.Products 
    AS product WHERE product.Color IS NOT NULL

另請參閱

概念

Entity SQL 參考