Compartilhar via


ISNULL (Entity SQL)

Determina se uma expressão de consulta é nula.

Sintaxe

expression IS [ NOT ] NULL

Argumentos

expression Qualquer expressão de consulta válida. Não pode ser uma coleção, tem membros da coleção, ou um tipo de registro com propriedades do tipo de coleção.

NÃO nega o resultado de EDM.Boolean IS NULL.

Valor Retornado

true se expression retorna nulo; caso contrário, false.

Comentários

Use IS NULL para determinar se o elemento de um externo joins é nulo:

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

Use IS NULL para determinar se um membro tem um valor real:

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

A tabela a seguir mostra o comportamento de IS NULL sobre alguns padrões. Todas as exceções são geradas do lado do cliente antes que o provedor obtenha chamado:

Padrão Comportamento
o zero É NULO Retorna true.
O DELEITE zero (COMO EntityType) É NULO Retorna true.
O DELEITE zero (COMO ComplexType) É NULO Gerencie um erro.
O DELEITE zero (COMO RowType) É NULO Gerencie um erro.
EntityType É NULO Retorna true ou false.
ComplexType É NULO Gerencie um erro.
RowType É NULO Gerencie um erro.

Exemplo

A seguinte consulta do Entity SQL usa o operador IS NOT NULL para determinar se uma expressão de consulta não é nula. A consulta é baseada no modelo de vendas AdventureWorks. Para compilar e executar essa consulta, siga estas etapas:

  1. Siga o procedimento em Como executar uma consulta que retorna resultados de StructuralType.

  2. Passe a consulta a seguir como um argumento para o método ExecuteStructuralTypeQuery:

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

Confira também