Справочник по Entity SQL

В этом разделе содержатся справочные статьи entity SQL. В этой статье перечислены и группируются операторы Entity SQL по категориям.

Арифметические операторы

Арифметические операторы предназначены для выполнения математических операций над двумя выражениями с одним или несколькими числовыми типами данных. В следующей таблице перечислены арифметические операторы Entity SQL:

Оператор Использование
+ (сложение) Сложение.
/ (деление) Деление.
% (остаток от деления) Возвращает остаток от деления.
* (умножение) Умножение.
- (отрицательное значение) Отрицание.
- (вычитание) Вычитание.

Канонические функции

Канонические функции поддерживаются всеми поставщиками данных и могут использоваться всеми технологиями запросов. В следующей таблице перечислены канонические функции:

Function Тип
Агрегатные канонические функции Entity SQL Описывает агрегатные канонические функции Entity SQL.
Математические канонические функции Описывает канонические функции entity SQL математических объектов.
Строковые канонические функции Описывает канонические функции Entity SQL строки.
Канонические функции даты и времени Обсуждает канонические функции Entity SQL даты и времени.
Битовые канонические функции Описывает побитовые канонические функции Entity SQL.
Прочие канонические функции Обсуждаются функции, которые не являются побитовыми, строковыми, математическими, статистическими или функциями даты-времени.

Операторы сравнения

Операторы сравнения определены для следующих типов: Byte, Int16, Int32, Int64, Double, Single, Decimal, String, DateTime, Date, Time, DateTimeOffset. Неявное повышение типов операндов происходит до применения оператора сравнения. Результатом действия операторов сравнения всегда являются логические значения. Если один из операндов принимает значение null, результат также принимает значение null.

Равенство и неравенство определяются для всех типов объектов, имеющих свойство идентификатора, например для типа Boolean. Объекты, которые не относятся к типам-примитивам, но обладают свойством идентификатора, считаются равными, если имеют одинаковое значение свойства идентификатора. В следующей таблице перечислены операторы сравнения Entity SQL:

Operator Description
= (равно) Проверяет равенство двух выражений.
> (Больше чем) Сравнивает два выражения и определяет, имеет ли левое выражение значение больше значения правого выражения.
>= (Больше или равно) Сравнивает два выражения и определяет, имеет ли левое выражение значение, большее или равное значению правого выражения.
IS [NOT] NULL Определяет, имеет ли выражение запроса значение null.
< (Меньше чем) Сравнивает два выражения, чтобы определить, является ли значение левого выражения меньшим, чем значение правого выражения.
<= (Меньше или равно) Сравнивает два выражения и определяет, имеет ли левое выражение значение, меньшее или равное значению правого выражения.
[НЕ] МЕЖДУ Определяет, находится ли значение выражения в указанном диапазоне.
\!= (не равно) Сравнивает два выражения, чтобы определить, не равно ли левое выражение правому выражению.
[НЕ] КАК Определяет, совпадает ли указанная символьная строка с заданным шаблоном.

Операторы выражений логических и регистров

Логические операторы проверяют истинность некоторого условия. Выражение CASE для определения результата вычисляет набор логических выражений. В следующей таблице перечислены операторы логических выражений и выражений CASE:

Operator Description
&&& (Логическое И) Логический оператор AND.
! (Логическое НЕ) Логическое НЕ.
|| (Логическое ИЛИ) Логический оператор OR.
CASE Вычисляет набор логических выражений для определения результата.
THEN Результат предложения WHEN при оценке значения true.

Операторы запроса

С помощью операторов запросов определяются выражения запроса, возвращающие данные сущности. В следующей таблице перечислены операторы запросов:

Оператор Использование
FROM Указывает коллекцию, используемую в инструкциях SELECT .
GROUP BY Указывает группы, в которые помещаются объекты, возвращаемые выражением запроса (SELECT).
GroupPartition Возвращает коллекцию значений аргумента, проекция которых получена из раздела группы, с которой связано статистическое выражение.
HAVING Определяет условие поиска для группы или статистического выражения.
LIMIT Используется с предложением ORDER BY для выполнения физического разбиения по страницам.
ORDER BY Указывает порядок сортировки, используемый для объектов, возвращаемых в инструкции SELECT .
SELECT Указывает элементы в проекции, возвращаемые запросом.
SKIP Используется с предложением ORDER BY для выполнения физического разбиения по страницам.
TOP Указывает на то, что будет возвращен только первый набор строк из результата запроса.
WHERE Выполняет условную фильтрацию данных, возвращаемых запросом.

Ссылочные операторы

Ссылка — это логический указатель (внешний ключ) на отдельную сущность в определенном наборе сущностей. Entity SQL поддерживает следующие операторы для создания, деконструкции и перехода по ссылкам:

Оператор Использование
CREATEREF Создает ссылки на сущность в наборе сущностей.
DEREF Разыменовывает значение ссылки и выдает результат разыменования.
KEY Извлекает ключ ссылки или выражение сущности.
NAVIGATE Позволяет переходить по связям от одного типа сущности к другому.
REF Возвращает ссылку на экземпляр сущности.

Операторы Set

Entity SQL предоставляет различные мощные операции набора. Сюда входят операторы набора, аналогичные операторам Transact-SQL, таким как UNION, INTERSECT, EXCEPT и EXISTS. Entity SQL также поддерживает операторы для устранения дублирования (SET), тестирования членства (IN) и соединений (JOIN). В следующей таблице перечислены операторы набора Entity SQL:

Оператор Использование
ANYELEMENT Извлекает элемент из многозначной коллекции.
EXCEPT Возвращает коллекцию различных значений из выражения запроса слева от операнда EXCEPT, которые не возвращаются из выражения запроса справа от операнда EXCEPT.
[НЕ] СУЩЕСТВУЕТ Определяет, является ли коллекция пустой.
FLATTEN Преобразовывает коллекцию коллекций в плоскую коллекцию.
[НЕ] В Определяет, совпадает ли значение с каким-либо значением в коллекции.
INTERSECT Возвращает коллекцию различных значений, возвращаемых выражениями запроса, указанных как слева, так и справа от операнда INTERSECT.
OVERLAPS Определяет, содержат ли две коллекции общие элементы.
SET Используется для преобразования коллекции объектов во множество путем получения новой коллекции, в которой удалены все повторяющиеся элементы.
UNION Сводит результаты двух или более запросов в одну коллекцию.

Операторы типов

Entity SQL предоставляет операции, позволяющие создавать, запрашивать и манипулировать типом выражения (значения). В следующей таблице перечислены операторы, используемые для работы с типами:

Оператор Использование
CAST Преобразует выражение из одного типа данных в другой.
COLLECTION Используется в операции FUNCTION для объявления коллекции типов сущностей или сложных типов.
IS [NOT] OF Определяет, относится ли тип выражения к указанному типу или одному из его подтипов.
OFTYPE Возвращает коллекцию объектов из выражения запроса, которое относится к заданному типу.
Конструктор именованных типов Используется для создания экземпляров типов сущности или сложных типов.
MULTISET Создает экземпляр мультинабора из списка значений.
ROW Создает анонимные структурно типизированные записи из одного или нескольких значений.
TREAT Обрабатывает объект некоторого базового типа, как объект указанного производного типа.

Другие операторы

В следующей таблице перечислены другие операторы Entity SQL:

Оператор Использование
+ (объединение строк) Используется для объединения строк в Entity SQL.
. (Доступ к членам) Используется для доступа к значению свойства или полю экземпляра структурного типа концептуальной модели.
-- (комментарий) Включите комментарии Entity SQL.
FUNCTION Определяет встраиваемую функцию, которая может выполняться в запросе Entity SQL.

См. также