ISNULL (Entity SQL)
Определяет, имеет ли выражение запроса значение null.
Синтаксис
expression IS [ NOT ] NULL
Аргументы
expression
Любое допустимое выражение запроса. Не может быть коллекцией, содержать элементы коллекции или тип записи со свойствами типа коллекции.
НЕ отрицает EDM. Логический результат IS NULL.
Возвращаемое значение
Значение true
, если выражение expression
возвращает значение NULL, либо значение 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. Для компиляции и запуска этого запроса выполните следующие шаги.
Выполните процедуру из статьи How to: Execute a Query that Returns StructuralType Results.
Передайте следующий запрос в качестве аргумента методу
ExecuteStructuralTypeQuery
:
SELECT VALUE product FROM AdventureWorksEntities.Products
AS product WHERE product.Color IS NOT NULL