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

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

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

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

Оператор Использование

+ (Сложение)

Сложение.

/ (Деление)

Деление.

Оператор % (остаток от деления)

Возвращает остаток от отделения.

* (Умножение)

Умножение.

«-» (отрицание)

Отрицание.

- (Вычитание)

Вычитание.

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

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

Функция Тип

Канонические статистические функции языка 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 приведены в следующей таблице.

Оператор Описание

= (равно)

Проверяет равенство двух выражений.

> (больше)

Сравнивает два выражения и определяет, имеет ли левое выражение значение больше значения правого выражения.

>= (больше или равно)

Сравнивает два выражения и определяет, имеет ли левое выражение значение, большее или равное значению правого выражения.

IS [NOT] NULL

Определяет, имеет ли выражение запроса значение null.

< (меньше)

Сравнивает два выражения, чтобы определить, является ли значение левого выражения меньшим, чем значение правого выражения.

<= (меньше или равно)

Сравнивает два выражения и определяет, имеет ли левое выражение значение, меньшее или равное значению правого выражения.

[NOT] BETWEEN

Определяет, находится ли значение выражения в указанном диапазоне.

!= (не равно)

Сравнивает два выражения, чтобы определить, является ли значение левого выражения не равным значению правого выражения.

[NOT] LIKE

Определяет, соответствует ли заданная строка символов заданному шаблону.

Логические операторы, операторы с выражением CASE

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

Оператор Описание

&& (логическое И)

Логическое И.

! (логическое НЕ)

Логическое НЕ.

|| (Логическое ИЛИ)

Логическое ИЛИ.

CASE

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

ELSE

Накладывает условия на выполнение инструкции Entity SQL .

THEN

Результат предложения WHEN, если оно имеет значение true.

WHEN

Вычисляет одно или несколько логических выражений.

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

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

Оператор Использование

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

Возвращает ссылку на экземпляр сущности.

Операторы работы с множествами

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

Оператор Использование

ANYELEMENT, оператор

Извлекает элемент из многозначной коллекции.

EXCEPT

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

[NOT] EXISTS

Определяет, является ли коллекция пустой.

Оператор FLATTEN

Преобразовывает коллекцию коллекций в плоскую коллекцию.

[ NOT ] IN

Определяет, совпадает ли значение с каким-либо значением в коллекции.

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.

См. также

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

Язык Entity SQL