Condividi tramite


ISNULL (Entity SQL)

Determina se un'espressione di query è Null.

Sintassi

expression IS [ NOT ] NULL

Argomenti

expression Qualsiasi espressione di query valida. Non può essere una raccolta, avere membri della raccolta o un tipo di record con proprietà del tipo di raccolta.

NOT Nega l'EDM. Risultato booleano di IS NULL.

Valore restituito

true se expression restituisce null; in caso contrario, false.

Osservazioni:

Usare IS NULL per determinare se l'elemento di un outer join è 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

Usare IS NULL per determinare se un membro ha un valore effettivo:

select c from LOB.Customer as c where c.DOB is not null

La tabella seguente illustra il comportamento di IS NULL su alcuni modelli. Tutte le eccezioni vengono generate dal lato client prima che venga richiamato il provider:

Modello Comportamento
NULL NULL Restituisce true.
TREAT (NULL AS EntityType) È NULL Restituisce true.
TREAT (null AS ComplexType) È NULL Genera un errore.
TREAT (null AS RowType) IS NULL Genera un errore.
EntityType IS NULL Restituisce true o false.
ComplexType IS NULL Genera un errore.
RowType IS NULL Genera un errore.

Esempio

La query Entity SQL seguente usa l'operatore IS NOT NULL per determinare se un'espressione di query non è Null. La query si basa sul modello AdventureWorks Sales. Per compilare ed eseguire questa query, seguire questa procedura:

  1. Seguire la procedura descritta in Procedura: Eseguire una query che restituisce risultati StructuralType.

  2. Passare la query seguente come argomento al ExecuteStructuralTypeQuery metodo :

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

Vedere anche