Справочник по 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. |