Поделиться через


Функции — язык запросов в Cosmos DB (в Azure и Fabric)

Язык запросов включает ряд системных функций, встроенных в язык запросов и предназначенных для обработки различных распространенных задач.

Functions

Ниже приведен список функций, поддерживаемых языком запросов:

Математические функции

Description
ABS Функция ABS вычисляет абсолютное (положительное) значение указанного числового выражения.
ACOS Функция ACOS вычисляет тригонометрический arccosine указанного числового значения. Arccosine — это угол, в радианах, косинус которого является указанным числовым выражением.
ASIN Функция ASIN вычисляет тригонометрическую арксину указанного числового значения. Arcsine — это угол, в радианах, синус которого является указанным числовым выражением.
ATAN Функция ATAN вычисляет тригонометрический arctangent указанного числового значения. Arctangent — это угол, в радианах, тангенс которого является указанным числовым выражением.
ATN2 Функция ATN2 вычисляет основное значение арктангента y/x, выраженного в радианах.
CEILING Функция CEILING вычисляет наименьшее целочисленное значение больше или равно указанному числового выражения.
COS Функция COS вычисляет тригонометрический косинус указанного угла в радианах.
COT Функция COT вычисляет тригонометрический котангент указанного угла в радианах.
DEGREES Функция DEGREES вычисляет соответствующий угол в градусах для угла, указанного в радианах.
EXP Функция EXP вычисляет экспоненциальное значение указанного числового выражения.
FLOOR Функция FLOOR вычисляет наибольшее целое число меньше или равно указанному числового выражения.
INTADD Функция INTADD возвращает сумму двух целых значений.
INTBITAND Функция INTBITAND возвращает сравнение битов каждого операнда с помощью инклюзивного оператора AND.
INTBITLEFTSHIFT Функция INTBITLEFTSHIFT возвращает результат побитовой операции смены влево для целочисленного значения.
INTBITNOT Функция INTBITNOT возвращает результат битовой операции NOT для целочисленного значения.
INTBITOR Функция INTBITOR возвращает результат побитовой операции инклюзивной ОПЕРАЦИИ OR с двумя целыми значениями.
INTBITRIGHTSHIFT Функция INTBITRIGHTSHIFT возвращает результат побитовой операции смены вправо для целочисленного значения.
INTBITXOR Функция INTBITXOR возвращает результат побитовой монопольной операции OR с двумя целыми значениями.
INTDIV Функция INTDIV возвращает результат деления первого целочисленного значения на второй.
INTMOD Функция INTMOD возвращает оставшуюся часть деления первого целочисленного значения на второй.
INTMUL Функция INTMUL возвращает произведение двух целых значений.
INTSUB Функция INTSUB возвращает результат вычитания второго целочисленного значения из первого.
LOG Функция LOG возвращает естественный логарифм указанного числового выражения.
LOG10 Функция LOG10 возвращает логарифм базового-10 указанного числового выражения.
NUMBERBIN Функция NUMBERBIN вычисляет входное значение, округленное до нескольких указанных размеров.
PI Функция PI возвращает постоянное значение Pi.
POWER Функция POWER возвращает значение указанного выражения несколько раз.
RADIANS Функция RADIANS возвращает соответствующий угол в радианах для угла, указанного в градусах.
RAND Функция RAND возвращает случайно созданное числовое значение от нуля до одного.
ROUND Функция ROUND возвращает числовое значение, округленное до ближайшего целочисленного значения.
SIGN Функция SIGN возвращает положительный знак (+1), ноль (0) или отрицательный (-1) указанного числового выражения.
SIN Функция SIN возвращает тригонометрический синус указанного угла в радианах.
SQRT Функция SQRT возвращает квадратный корень указанного числового значения.
SQUARE Функция SQUARE возвращает квадрат указанного числового значения.
TAN Функция TAN возвращает тригонометрический тангенс указанного угла в радианах.
TRUNC Функция TRUNC возвращает числовое значение, усеченное до ближайшего целого числа.

Функции массива

Description
ARRAY_CONCAT Функция ARRAY_CONCAT возвращает массив, который является результатом объединения двух или более значений массива.
ARRAY_CONTAINS_ALL Функция ARRAY_CONTAINS_ALL возвращает логическое значение, указывающее, содержит ли массив все указанные значения.
ARRAY_CONTAINS_ANY Функция ARRAY_CONTAINS_ANY возвращает логическое значение, указывающее, содержит ли массив любой из указанных значений.
ARRAY_CONTAINS Функция ARRAY_CONTAINS возвращает логическое значение, указывающее, содержит ли массив указанное значение. Можно проверить частичное или полное соответствие объекта с помощью логического выражения в функции.
ARRAY_LENGTH Функция ARRAY_LENGTH возвращает количество элементов в указанном выражении массива.
ARRAY_SLICE Функция ARRAY_SLICE возвращает подмножество выражения массива с помощью указанного индекса и длины.
CHOOSE Функция CHOOSE возвращает выражение по указанному индексу списка или не определено, если индекс превышает границы списка.
OBJECTTOARRAY Функция OBJECTTOARRAY преобразует пары полей и значений в объект JSON в массив JSON.
SETINTERSECT Функция SETINTERSECT возвращает набор выражений, содержащихся в обоих входных массивах без дубликатов.
SETUNION Функция SETUNION возвращает набор выражений, содержащий все выражения из двух собранных наборов без дубликатов.

Функции агрегирования

Description
AVG Функция AVG вычисляет среднее значение значений в выражении.
COUNT Функция COUNT возвращает количество значений в выражении.
MAX Функция MAX возвращает максимальное значение указанного выражения.
MIN Функция MIN возвращает минимальное значение указанного выражения.
SUM Функция SUM вычисляет сумму значений в выражении.

Строковые функции

Description
CONCAT Функция CONCAT возвращает строку, которая является результатом объединения нескольких полей из документа.
CONTAINS Функция CONTAINS возвращает логическое значение, указывающее, содержит ли первое строковое выражение второе строковое выражение.
ENDSWITH Функция ENDSWITH возвращает логическое значение, указывающее, заканчивается ли строка указанным суффиксом. При необходимости сравнение может быть нечувствительным к регистру.
INDEX-OF Функция INDEX_OF возвращает индекс первого вхождения строки.
LEFT Функция LEFT возвращает левую часть строки до указанного числа символов.
LENGTH Функция LENGTH возвращает количество символов в указанном строковом выражении.
LOWER Функция LOWER возвращает строковое выражение после преобразования символьных данных верхнего регистра в строчный регистр.
LTRIM Функция LTRIM возвращает строковое выражение после удаления ведущих пробелов или указанных символов.
REGEXMATCH Функция REGEXMATCH возвращает логическое значение, указывающее, соответствует ли указанная строка указанному регулярному выражению. Регулярные выражения — это краткие и гибкие нотации для поиска шаблонов текста.
REPLACE Функция REPLACE возвращает строку со всеми вхождениями указанной строки, замененной.
REPLICATE Функция REPLICATE возвращает строковое значение, повторяющее определенное количество раз.
REVERSE Функция REVERSE возвращает обратный порядок строкового значения.
RIGHT Функция RIGHT возвращает правую часть строки до указанного числа символов.
RTRIM Функция RTRIM возвращает строковое выражение после удаления конечных пробелов или указанных символов.
STARTSWITH Функция STARTSWITH возвращает логическое значение, указывающее, начинается ли первое строковое выражение со второй.
STRINGEQUALS Функция STRINGEQUALS возвращает логическое значение, указывающее, соответствует ли первое строковое выражение второму.
STRINGJOIN Функция STRINGJOIN возвращает строку, которая объединяет элементы указанного массива с помощью указанного разделителя между каждым элементом.
STRINGSPLIT Функция STRINGSPLIT возвращает массив подстроок, полученных от разделения исходной строки указанным разделителем.
STRINGTOARRAY Функция STRINGTOARRAY преобразует строковое выражение в массив.
STRINGTOBOOLEAN Функция STRINGTOBOOLEAN преобразует строковое выражение в логическое значение.
SUBSTRING Функция SUBSTRING возвращает часть строкового выражения, начиная с указанной позиции и указанной длины, или в конец строки.
TOSTRING Функция TOSTRING возвращает строковое представление значения.
TRIM Функция TRIM возвращает строковое выражение после удаления начальных и конечных пробелов или пользовательских символов.
UPPER Функция UPPER возвращает строковое выражение после преобразования строчных символьных данных в верхний регистр.

Функции даты и времени

Description
DATETIMEADD Функция DATETIMEADD возвращает значение строки даты и времени, которое является результатом добавления указанного значения числа в указанную строку даты и времени.
DATETIMEBIN Функция DATETIMEBIN возвращает значение строки даты и времени, которое является результатом бининга (или округления) части указанной строки даты и времени.
DATETIMEDIFF Функция DATETIMEDIFF возвращает разницу в виде целого числа со знаком указанной даты и времени между двумя значениями даты и времени.
DATETIMEFROMPARTS Функция DATETIMEFROMPARTS возвращает значение строки даты и времени, созданное из входных числовых значений для различных частей даты и времени.
DATETIMEPART Функция DATETIMEPART возвращает значение указанной части даты и времени для указанной даты и времени.
DATETIMETOTICKS Функция DATETIMETOTICKS преобразует указанные даты и времени в галочки. Один галок представляет 100 nanoseconds или 0,0000001 секунды.
DATETIMETOTIMESTAMP Функция DATETIMETOTIMESTAMP преобразует указанную дату и время в числовую метку времени. Метка времени — это числовое число со знаком, которое измеряет миллисекунда с эпохи Unix.
GETCURRENTDATETIME Функция GETCURRENTDATETIME возвращает текущую дату и время UTC (координированное универсальное время) в виде строки ISO 8601 .
GETCURRENTDATETIMESTATIC Функция GETCURRENTDATETIMESTATIC возвращает одно и то же значение даты и времени UTC для всех элементов запроса в виде строки ISO 8601. Это полезно для согласованных меток времени в результатах запроса.
GETCURRENTTICKS Функция GETCURRENTTICKS возвращает текущее время UTC в виде числа интервалов 100-nanosecond (тиков), прошедших с 0001-01-01T00:00:00.000000Z.
GETCURRENTTICKSSTATIC Функция GETCURRENTTICKSSTATIC возвращает статическое значение тиков (100-наносекунд с эпохи Unix) для всех элементов в одной секции.
GETCURRENTTIMESTAMP Функция GETCURRENTTIMESTAMP возвращает текущую метку времени в миллисекундах с эпохи Unix.
GETCURRENTTIMESTAMPSTATIC Функция GETCURRENTTIMESTAMPSTATIC возвращает статическое значение метки времени (миллисекундах с эпохи Unix) для всех элементов в одной секции.
TICKSTODATETIME Функция TICKSTODATETIME преобразует указанное число тиков в значение даты и времени.
TIMESTAMPTODATETIME Функция TIMESTAMPTODATETIME преобразует указанную метку времени в значение даты и времени.

Функции элементов

Description
DOCUMENTID Функция DOCUMENTID возвращает уникальный идентификатор документа для заданного элемента в контейнере.

Функции полнотекстового поиска

Description
FULLTEXTCONTAINS Функция FULLTEXTCONTAINS возвращает логическое значение, указывающее, содержится ли строковое выражение ключевого слова в указанном пути свойства.
FULLTEXTCONTAINSALL Функция FULLTEXTCONTAINSALL возвращает логическое значение, указывающее, содержатся ли все предоставленные строковые выражения в указанном пути свойства.
FULLTEXTCONTAINSANY Функция FULLTEXTCONTAINSANY возвращает логическое значение, указывающее, содержится ли любое из предоставленных строковых выражений в указанном пути свойства.
FULLTEXTSCORE Функция FULLTEXTSCORE возвращает значение оценки BM25, которое можно использовать только в ORDER BY RANK предложении для сортировки результатов от высокой релевантности до наименьшей релевантности указанных терминов.
RRF Функция RRF возвращает сплавленную оценку путем объединения двух или более показателей, предоставляемых другими функциями.

Условные функции

Description
IIF Функция IIF возвращает одно из двух значений в зависимости от того, имеет ли логическое выражение значение true или false.

Функции проверки типа

Description
IS_ARRAY Функция IS_ARRAY возвращает логическое значение, указывающее, является ли тип указанного выражения массивом.
IS_BOOL Функция IS_BOOL возвращает логическое значение, указывающее, является ли тип указанного выражения логическим.
IS_DEFINED Функция IS_DEFINED возвращает логическое значение, указывающее, назначено ли свойство.
IS_FINITE_NUMBER Функция IS_FINITE_NUMBER возвращает логическое значение, указывающее, является ли число конечным числом (не бесконечным).
IS_INTEGER Функция IS_INTEGER возвращает логическое значение, указывающее, является ли число 64-разрядным целым числом со знаком. От 64-разрядного целого числа со знаком до -9,223,372,036,854,775,8089,223,372,036,854,775,807. Дополнительные сведения см. в __int64.
IS_NULL Функция IS_NULL возвращает логическое значение, указывающее, является nullли тип указанного выражения.
IS_NUMBER Функция IS_NUMBER возвращает логическое значение, указывающее, является ли тип указанного выражения числом.
IS_OBJECT Функция IS_OBJECT возвращает логическое значение, указывающее, является ли тип указанного выражения объектом JSON.
IS_PRIMITIVE Функция IS_PRIMITIVE возвращает логическое значение, указывающее, является ли тип указанного выражения примитивом (строка, логическое значение, числовой или null).
IS_STRING Функция IS_STRING возвращает логическое значение, указывающее, является ли тип указанного выражения строкой.
STRINGTONULL Функция STRINGTONULL преобразует строковое выражение в null.
STRINGTONUMBER Функция STRINGTONUMBER преобразует строковое выражение в число.
STRINGTOOBJECT Функция STRINGTOOBJECT преобразует строковое выражение в объект.

Пространственные функции

Description
ST_AREA Функция ST_AREA возвращает общую область выражения GeoJSON Polygon или MultiPolygon.
ST_DISTANCE Функция ST_DISTANCE возвращает расстояние между двумя выражениями GeoJSON Point, Polygon, MultiPolygon или LineString.
ST_INTERSECTS Функция ST_INTERSECTS возвращает логическое значение, указывающее, пересекает ли объект GeoJSON, указанный в первом аргументе, объект GeoJSON во втором аргументе.
ST_ISVALID Функция ST_ISVALID возвращает логическое значение, указывающее, является ли допустимое выражение GeoJSON Point, Polygon, MultiPolygon или LineString.
ST_ISVALIDDETAILED Функция ST_ISVALIDDETAILED возвращает значение JSON, содержащее логическое значение, если указанное выражение GeoJSON Point, Polygon или LineString допустимо, а если недопустимо, причина.
ST_WITHIN Функция ST_WITHIN возвращает логическое выражение, указывающее, находится ли объект GeoJSON, указанный в первом аргументе, в объекте GeoJSON во втором аргументе.
VECTORDISTANCE Функция VECTORDISTANCE возвращает оценку сходства между двумя указанными векторами.