Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Выполнение любого из следующих операторов Entity SQL включает сравнение экземпляров типов:
Явное сравнение
Операции равенства:
=
!=
Операции упорядочивания:
<
<=
>
>=
Операции с возможностью null:
ЯВЛЯЕТСЯ NULL
НЕ ИМЕЕТ ЗНАЧЕНИЯ NULL
Явное различие
Различие равенства:
УНИКАЛЬНЫЙ
ГРУППИРОВКА ПО
Упорядочение:
- ORDER BY (СОРТИРОВАТЬ ПО)
Неявное различие
Установка операций и предикатов (равенство):
СОЮЗ
ПЕРЕСЕЧЕНИЕ
КРОМЕ
УСТАНОВКА
Перекрытия
Предикаты элементов (равенство):
- В
Поддерживаемые сочетания
В следующей таблице показаны все поддерживаемые сочетания операторов сравнения для каждого типа:
| Тип | = != |
ГРУППИРОВКА ПО УНИКАЛЬНО |
СОЮЗ ПЕРЕСЕЧЕНИЕ EXCEPT НАБОР ПЕРЕКРЫВАЕТ |
IN |
<
<= > >= |
ORDER BY |
IS NULL НЕ ИМЕЕТ ЗНАЧЕНИЯ NULL |
|---|---|---|---|---|---|---|---|
| Тип сущности | Ссылка1 | Все свойства2 | Все свойства2 | Все свойства2 | Бросок3 | Бросок3 | Ссылка1 |
| Сложный тип | Бросок3 | Бросок3 | Бросок3 | Бросок3 | Бросок3 | Бросок3 | Бросок3 |
| Строка | Все свойства4 | Все свойства4 | Все свойства4 | Бросок3 | Бросок3 | Все свойства4 | Бросок3 |
| Примитивный тип | Зависит от поставщика | Зависит от поставщика | Зависит от поставщика | Зависит от поставщика | Зависит от поставщика | Зависит от поставщика | Зависит от поставщика |
| Многоустановка | Бросок3 | Бросок3 | Бросок3 | Бросок3 | Бросок3 | Бросок3 | Бросок3 |
| Ссылка | Да5 | Да5 | Да5 | Да5 | Бросать | Бросать | Да5 |
| Ассоциация тип |
Бросок3 | Бросать | Бросать | Бросать | Бросок3 | Бросок3 | Бросок3 |
1Ссылки на указанные экземпляры типа сущности неявно сравниваются, как показано в следующем примере:
SELECT p1, p2
FROM AdventureWorksEntities.Product AS p1
JOIN AdventureWorksEntities.Product AS p2
WHERE p1 != p2 OR p1 IS NULL
Экземпляр сущности нельзя сравнить с явной ссылкой. Если эта попытка предпринята, создается исключение. Например, следующий запрос вызовет исключение:
SELECT p1, p2
FROM AdventureWorksEntities.Product AS p1
JOIN AdventureWorksEntities.Product AS p2
WHERE p1 != REF(p2)
2Свойства сложных типов выравниваются перед отправкой в магазин, поэтому они становятся сопоставимыми (если все их свойства сопоставимы). См. также 4.
3Среда выполнения Entity Framework обнаруживает неподдерживаемый случай и создает понятное исключение без привлечения поставщика или хранилища.
4Предпринята попытка сравнить все свойства. Если есть свойство, которое имеет несовершенный тип, например текст, ntext или изображение, может быть вызвано исключение сервера.
5Сравниваются все отдельные элементы ссылок (это включает имя набора сущностей и все ключевые свойства типа сущности).