Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Область применения:
Databricks SQL
Databricks Runtime
В этой статье представлены ссылки на встроенные операторы и функции для строк и двоичных типов, для числовых скаляров, агрегаций, окон, массивов, словарей, дат и меток времени, приведения, данных CSV, данных JSON, манипуляций XPath и другие функции.
Для вариантов использования, которые не поддерживаются существующими встроенными функциями, рекомендуется определить пользовательскую функцию. См. раздел "Что такое пользовательские функции?".
См. также:
Операторы и предикаты
Сведения о том, как операторы разбираются в соответствии друг с другом, см. раздел "Приоритет оператора".
| Operator | Syntax | Description |
|---|---|---|
| & | expr1 & expr2 |
Возвращает побитовое значение AND для expr1 и expr2. |
| and | expr1 and expr2 |
Возвращает логическое значение AND от expr1 и expr2. |
| * | multiplier * multiplicand |
Возвращает значение multiplier, умноженное на multiplicand. |
| != | expr1 != expr2 |
Возвращает значение true, если expr1 не равно expr2. В противном случае возвращает false. |
| ! | !expr |
Возвращает логическое значение NOT для логического выражения. |
| between | expr1 [not] between expr2 and expr2 |
Проверяет, что значение expr1 больше или равно expr2 и меньше или равно expr3. |
| [] | arrayExpr [ indexExpr ] |
Возвращает второй элемент indexExprARRAY. |
| [] | mapExpr [ keyExpr ] |
Возвращает значение по keyExpr элементам MAPmapExpr. |
| ^ | expr1 ^ expr2 |
Возвращает побитовое исключающее OR (XOR) значений expr1 и expr2. |
| : | jsonStr : jsonPath |
Возвращает поля, извлеченные из jsonStr. |
| :: | expr :: type |
Приводит значение expr к типу данных type. |
| ?:: | expr ?:: type |
Преобразует значение expr в целевой тип данных type при возможности и возвращает NULL, если это невозможно. |
| div | dividend div divisor |
Возвращает целую часть деления dividend на divisor. |
| . | mapExpr . keyIdentifier |
Возвращает значение MAP через keyIdentifier. |
| . | structExpr . fieldIdentifier |
Возвращает поле STRUCT от fieldIdentifier. |
| == | expr1 == expr2 |
Возвращает true, если expr1 равно expr2. В противном случае возвращает false. |
| = | expr1 = expr2 |
Возвращает true, если expr1 равно expr2. В противном случае возвращает false. |
| >= | expr1 >= expr2 |
Возвращает true, если значение expr1 больше или равно значению expr2. В противном случае возвращаетfalse. |
| > | expr1 > expr2 |
Возвращает true, если значение expr1 больше, чем значение expr2. В противном случае возвращает false. |
| exists | exists(query) |
Возвращает значение true, если query возвращает хотя бы одну строку. В противном случае возвращает false. |
| ilike | str [not] ilike (pattern[ESCAPE escape]) |
Возвращает значение true, если str (не) соответствует pattern без учета регистра в escape. |
| ilike | str [not] ilike {ANY\|SOME\|ALL}([pattern[, ...]]) |
Возвращает true, если str (не) соответствует любым или всем шаблонам независимо от регистра. |
| in | elem [not] in (expr1[, ...]) |
Возвращает значение true, если elem (не) равно какому-либо exprN. |
| in | elem [not] in (query) |
Возвращает true, если elem (не) равно любой строке в query. |
| является уникальным | expr1 is [not] distinct from expr2 |
Проверяет, имеют ли аргументы разные значения, при которых NULL считаются сопоставимыми значениями. |
| имеет значение false | expr is [not] false |
Проверяет, (не) имеет ли expr значение false. |
| имеет значение NULL | expr is [not] null |
Возвращает true, если expr (не) равно NULL. |
| истинно | expr is [not] true |
Проверяет, (не) имеет ли expr значение true. |
| like | str [not] like (pattern[ESCAPE escape]) |
Возвращает значение true, если str (не) совпадает pattern с escape. |
| like | str [not] like {ANY\|SOME\|ALL}([pattern[, ...]]) |
Возвращает значение true, если str (не) совпадает с какими-либо/всеми шаблонами. |
| <=> | expr1 <=> expr2 |
Возвращает тот же результат, что и EQUAL(=) для операндов, отличных от NULL, но возвращает true, если оба операнда имеют значение NULL, и false, если один из них имеет значение NULL. |
| <= | expr1 <= expr2 |
Возвращает true, если значение expr1 меньше или равно значению expr2. В противном случае возвращает false. |
| <> | expr1 <> expr2 |
Возвращает значение true, если expr1 не равно expr2. В противном случае возвращает false. |
| < | expr1 < expr2 |
Возвращает значение true, если значение expr1 меньше значения expr2. В противном случае — значение false. |
| - | expr1 - expr2 |
Возвращает результат вычитания expr2 из expr1. |
| not | not expr |
Возвращает логическое значение NOT для логического выражения. |
| or | expr1 or expr2 |
Возвращает логическое значение OR от expr1 и expr2. |
| % | dividend % divisor |
Возвращает остаток после dividend / divisor. |
| || | expr1 \|\| expr2 |
Возвращает результат объединения expr1 и expr2. |
| | | expr1 \| expr2 |
Возвращает побитовое значение OR для expr1 и expr2. |
| + | expr1 + expr2 |
Возвращает сумму expr1 и expr2. |
| regexp | str [not] regexp regex |
Возвращает значение true, если str (не) совпадает с regex. |
| regexp_like | str [not] regexp_like regex |
Возвращает значение true, если str (не) совпадает с regex. |
| rlike | str [not] rlike regex |
Возвращает значение true, если str (не) совпадает с regex. |
| / | dividend / divisor |
Возвращает результат деления dividend на divisor. |
| ~ | ~ expr |
Возвращает значение побитового NOT для expr. |
Приоритет операторов
| Precedence | Operator |
|---|---|
| 1 |
:, , ::?::[ ] |
| 2 |
-(унарный), +(унарный), ~ |
| 3 |
*, , /%div |
| 4 |
+, , -\|\| |
| 5 | & |
| 6 | ^ |
| 7 | \| |
| 8 |
=, ==<=><>!=<<=>>= |
| 9 |
not, exists |
| 10 |
between, in, rlikeregexpilikelikeis [not] [NULL, true, false]is [not] distinct from |
| 11 | and |
| 12 | or |
Строковые и двоичные функции
| Function | Description |
|---|---|
| expr1 || expr2 | Возвращает результат объединения expr1 и expr2. |
| aes_decrypt(expr, ключ[, режим[, дополнение[, aad]]]) | Расшифровывает двоичный файл expr с помощью шифрования AES. |
| aes_encrypt(expr, key[, mode[, padding[, iv[, aad]]]) | Зашифровывает двоичный файл expr с помощью шифрования AES. |
| ascii(str) | Возвращает кодовую точку ASCII первого символа str. |
| base64(expr) | Преобразовывает expr в строку base64. |
| bin(expr) | Возвращает двоичное представление expr. |
| binary(expr) | Преобразует значение expr в BINARY. |
| bit_length(expr) | Возвращает длину строковых данных в битах или число битов двоичных данных. |
| bitmap_count(expr) | Возвращает количество битов, заданных в строке BINARY , представляющей растровое изображение. |
| btrim(str [, trimStr]) | Возвращает str с удаленными начальными и конечными символами. |
| char(expr) | Возвращает символ в указанной кодовой точке UTF-16. |
| char_length(expr) | Возвращает длину строковых данных в символах или число байтов двоичных данных. |
| character_length(expr) | Возвращает длину строковых данных в символах или число байтов двоичных данных. |
| charindex(substr, str[, pos]) | Возвращает позицию первого вхождения substr в str после позиции pos. |
| chr(expr) | Возвращает символ в указанной кодовой точке UTF-16. |
| strExpr collate collationName | Присоединяет явную сортировку collationName к strExpr. |
| параметры сортировки [for] (strExpr) | Возвращает схему сортировки, прикрепленную к strExpr. |
| concat(expr1, expr2[, ...]) | Возвращает объединение аргументов. |
| concat_ws(sep[, expr1[, ...]]) | Возвращает объединённые строки, разделенные sep. |
| contains(expr, subExpr) | Возвращает значение true , если exprSTRING или BINARY содержит subExpr. |
| crc32(expr) | Возвращает значение циклической проверки избыточности для expr. |
| decode(expr, charSet) | Преобразует двоичное значение expr в строку с помощью кодировки символьного набора charSet. |
| encode(expr, charSet) | Возвращает двоичное представление строки с использованием кодировки символов charSet. |
| endswith(expr, endExpr) | Возвращает значение true , если exprSTRING или BINARY заканчивается endExpr. |
| find_in_set(searchExpr, sourceExpr) (найти_в_наборе(searchExpr, sourceExpr)) | Возвращает позицию строки в разделенном запятыми списке строк. |
| format_number(expr, scale) | Форматирует expr как #,###,###.## с округлением до scale десятичных разрядов. |
| format_number(expr, fmt) | Форматировать expr как fmt. |
| format_string(strfmt[, obj1 [, ...]]) | Возвращает форматированную строку из строк формата в стиле printf. |
| hex(expr) | Преобразовывает expr в шестнадцатеричное значение. |
| ```str ilike (pattern[ESCAPE escape])``` | Возвращает значение true, если str совпадает с pattern без учета регистра escape. |
| initcap(expr) | Возвращает expr, где первая буква каждого слова прописная. |
| instr(str, substr) | Возвращает индекс (начиная с 1) первого вхождения substr в str. |
| lcase(expr) | Возвращает expr, где все символы заменены на строчные. |
| left(str, len) | Возвращает левые len символы из str. |
| len(expr) | Возвращает длину строковых данных в символах или число байтов двоичных данных. |
| length(expr) | Возвращает длину строковых данных в символах или число байтов двоичных данных. |
| levenshtein(str1, str2) | Возвращает расстояние Левенштейна между строками str1 и str2. |
| стр как (шаблон[ESCAPE escape]) | Возвращает значение true, если str совпадает с pattern и escape. |
| locate(substr, str[, pos]) | Возвращает позицию первого вхождения substr в str после позиции pos. |
| lower(expr) | Возвращает expr, где все символы заменены на строчные. |
| lpad(expr, len[, pad]) | Возвращает expr, дополняя слева pad до длины len. |
| ltrim([trimstr,] str) | Возвращает str с удалением начальных символов, содержащихся в trimStr. |
| mask(str[, upperChar[, lowerChar[, digitChar[, otherChar]]]) | Возвращает маскированную версию входных данных str. |
| md5(expr) | Возвращает 128-разрядную контрольную сумму MD5 для expr в виде шестнадцатеричной строки. |
| octet_length(expr) | Возвращает длину строковых данных в байтах или число байтов двоичных данных. |
| наложение(input ПРИМЕНЕНИЕ замена ИЗ pos [ДЛЯ len]) | Заменяет input на replace, который начинается с pos и имеет длину len. |
| наложение(input ПРИМЕНЕНИЕ замена ИЗ pos [ДЛЯ len]) | Заменяет input на replace, который начинается с pos и имеет длину len. |
| parse_url(url, partToExtract[, key]) | Извлекает часть из url. |
| position(substr, str[, pos]) | Возвращает позицию первого вхождения substr в str после позиции pos. |
| position(subtr IN str) | Возвращает позицию первого вхождения substr в str после позиции pos. |
| printf(strfmt[, obj1 [, ...]]) | Возвращает форматированную строку из строк формата в стиле printf. |
| randstr(length) | Возвращает случайную строку length буквенно-числовых символов. |
| str regexp regex | Возвращает значение true, если str соответствует regex. |
| str regexp_like regex | Возвращает значение true, если str соответствует regex. |
| regexp_count(str, regexp) | Возвращает количество совпадений str с шаблоном regexp. |
| regexp_extract(str, regexp[, idx]) | Извлекает первую строку в str, которая соответствует выражению regexp и соответствует индексу группы regex. |
| regexp_extract_all(str, regexp[, idx]) | Извлекает все строки в str, которые соответствуют выражению regexp и соответствуют индексу группы regex. |
| regexp_instr(str, regexp) | Возвращает позицию первой подстроки в str, которая соответствует regexp. |
| regexp_replace(str, regexp, rep[, position]) | Заменяет все подстроки в str, которые соответствуют regexp, на rep. |
| regexp_substr(str, regexp) | Возвращает первую подстроку в str, которая соответствует regexp. |
| repeat(expr, n) | Возвращает строку, которая повторяется exprn раз. |
| заменить(строка, поиск [, замена]) | Заменяет все случаи search на replace. |
| reverse(expr) | Возвращает обратную строку или массив с обратным порядком элементов. |
| right(str, len) | Возвращает крайние справа len символов из строки str. |
| str rlike regex | Возвращает значение true, если str соответствует regex. |
| rpad(expr, len[, pad]) | Возвращает строку expr, дополненную справа символами pad до длины len. |
| rtrim([trimStr,] str) | Возвращает str с удалёнными конечными символами. |
| предложения(str[, lang, country]) | Разделяет str в массив массивов слов. |
| sha(expr) | Возвращает хэш-код SHA-1 в виде шестнадцатеричной строки для expr. |
| sha1(expr) | Возвращает хэш-код SHA-1 в виде шестнадцатеричной строки для expr. |
| sha2(expr, bitLength) | Возвращает контрольную сумму семейства SHA-2 в виде шестнадцатеричной строки для expr. |
| soundex(expr) | Возвращает код "soundex" строки. |
| space(n) | Возвращает строку, состоящую из n пробелов. |
| split(str, regex[, limit]) | Разделяет str вокруг вхождений, соответствующих regex, и возвращает массив длиной не более limit. |
| split_part(str, delim, partNum) | Разделяет str по вхождениям delim и возвращает часть partNum. |
| startswith(expr, startExpr) | Возвращает значение true , если exprSTRING или BINARY начинается с startExpr. |
| string(expr) | Приведение значения expr к STRING. |
| substr(expr, pos[, len]) | Возвращает подстроку, входящую в expr, которая начинается с pos и имеет длину len. |
| substr(expr FROM pos[ FOR len]) | Возвращает подстроку, входящую в expr, которая начинается с pos и имеет длину len. |
| substring(expr, pos[, len]) | Возвращает подстроку, входящую в expr, которая начинается с pos и имеет длину len. |
| подстрока(expr FROM pos[ FOR len]) | Возвращает подстроку, входящую в expr, которая начинается с pos и имеет длину len. |
| substring_index(expr, delim, count) | Возвращает подстроку из expr, которая находится перед count вхождениями разделителя delim. |
| to_binary(expr[, fmt]) | Возвращает expr, приведённое к двоичному типу на основе fmt. |
| to_char(numExpr, fmt) | Возвращает приведение numExpr к STRING с использованием форматирования fmt. |
| to_varchar(numExpr, fmt) | Возвращает приведение numExpr к STRING с использованием форматирования fmt. |
| translate(expr, from, to) (функция перевода) | Возвращает expr, где все символы в from заменяются на символы из to. |
| trim([[ОБА | ВЕДУЩИЙ | ЗАВЕРШАЮЩИЙ] [trimStr] FROM] str) | Обрезает символы из строки. |
| try_aes_decrypt(expr, key[, mode[, padding[, aad]]]) | Расшифровывает двоичный файл expr с помощью шифрования AES и возвращается NULL в случае ошибки. |
| try_to_binary(expr [, fmt]) - попытка преобразования выражения в двоичный формат. | Возвращает expr, преобразованный в BINARY на основе fmt, или NULL, если входные данные недопустимы. |
| try_url_decode(str) | Преобразует строку обратно из формата application/x-www-form-urlencoded и возвращает NULL в случае ошибки. |
| try_zstd_decompress(value) | Возвращает значение, распакованное с использованием сжатия Zstandard, или NULL, если входные данные некорректны. |
| ucase(expr) | Возвращает expr со всеми символами, преобразованными в прописные. |
| unbase64(expr) | Возвращает декодированную строку base64 в виде двоичного кода. |
| unhex(expr) | Преобразует шестнадцатеричное expr в BINARY. |
| upper(expr) | Возвращает expr со всеми символами, преобразованными в прописные. |
| url_decode(str) | Преобразует строку обратно из формата application/x-www-form-urlencoded. |
| url_encode(str) | Преобразует строку в формат application/x-www-form-urlencoded . |
| zstd_compress (значение[,уровень[,режим_потока]]) | Возвращает значение, сжатое с помощью Zstandard. |
| zstd_decompress(value) | Возвращает значение, распакованное с использованием алгоритма Zstandard. |
Числовые скалярные функции
| Function | Description |
|---|---|
| ~ expr | Возвращает значение побитового NOT для expr. |
| дивиденд / делитель | Возвращает результат деления dividend на divisor. |
| expr1 | expr2 | Возвращает побитовое значение OR для expr1 и expr2. |
| - expr | Возвращает отрицательное значение expr. |
| expr1 - expr2 | Возвращает результат вычитания expr2 из expr1. |
| + expr | Возвращает значение expr. |
| expr1 + expr2 | Возвращает сумму expr1 и expr2. |
| делитель дивидендов % | Возвращает остаток после dividend / divisor. |
| expr1 ^ expr2 | Возвращает побитовое исключающее OR (XOR) значений expr1 и expr2. |
| expr1 & expr2 | Возвращает побитовое значение AND для expr1 и expr2. |
| множитель * множимое | Возвращает значение multiplier, умноженное на multiplicand. |
| abs(expr) | Возвращает абсолютное значение численного значения в expr. |
| acos(expr) | Возвращает обратный косинус (арккосинус) значения expr. |
| acosh(expr) | Возвращает обратный гиперболический косинус аргумента expr. |
| asin(expr) | Возвращает обратный синус (арксинус) значения expr. |
| asinh(expr) | Возвращает обратный гиперболический синус аргумента expr. |
| atan(expr) | Возвращает обратный тангенс (арктангенс) значения expr. |
| atan2(exprY, exprX) | Возвращает угол в радианах между положительной осью x плоскости и точкой, заданной координатами (exprX, exprY). |
| atanh(expr) | Возвращает обратный гиперболический тангенс expr. |
| bigint(expr) | Приведение значения expr к BIGINT. |
| bit_count(expr) | Возвращает количество бит, заданных в аргументе. |
| bit_get(expr, pos) | Возвращает значение бита в двоичном представлении целочисленного числа. |
| bit_reverse(expr) | Возвращает значение, которое получается при изменении порядка битов в аргументе. |
| bitmap_bit_position(expr) | Возвращает 0-разрядную позицию заданного BIGINT числа в контейнере. |
| bitmap_bucket_number(expr) | Возвращает номер контейнера растрового изображения для заданного BIGINT числа. |
| bround(expr[,targetScale]) | Возвращает значение expr, округленное с использованием режима округления HALF_EVEN. |
| cbrt(expr) | Возвращает кубический корень числа expr. |
| ceil(expr[,targetScale]) | Возвращает наименьшее число не меньше expr с округлением до targetScale цифр после запятой. |
| ceiling(expr[,targetScale]) | Возвращает наименьшее число не меньше expr с округлением до targetScale цифр после запятой. |
| conv(num, fromBase, toBase) | Преобразует num из fromBase в toBase. |
| convert_timezone([sourceTz, ]targetTz, sourceTs) | Преобразует TIMESTAMP_NTZsourceTs из часового пояса sourceTz в targetTz. |
| cos(expr) | Возвращает косинус expr. |
| cosh(expr) | Возвращает гиперболический косинус expr. |
| cot(expr) | Возвращает котангенс значения expr. |
| csc(expr) | Возвращает косеканс значения expr. |
| decimal(expr) | Приведение значения expr к DECIMAL. |
| degrees(expr) | Преобразует радианы в градусы. |
| делитель div дивиденд | Возвращает целую часть деления divisor на dividend. |
| double(expr) | Приведение значения expr к DOUBLE. |
| e() | Возвращает константу e. |
| exp(expr) | Возводит e в степень expr. |
| expm1(expr) | Возвращает exp(expr) - 1. |
| factorial(expr) | Возвращает факториал значения expr. |
| float(expr) | Приведение значения expr к FLOAT. |
| floor(expr[,targetScale]) | Возвращает наибольшее число не меньше expr с округлением до targetScale цифр после запятой. |
| getbit(expr, pos) | Возвращает значение бита в двоичном представлении целочисленного числа. |
| hypot(expr1, expr2) | Возвращает sqrt(expr1 * expr1 + expr2 * expr2). |
| int(expr) | Приведение значения expr к INTEGER. |
| isnan(expr) | Возвращает true, если expr равно NaN. |
| kll_sketch_get_n_bigint(эскиз) | Возвращает количество элементов в целочисленном эскизе KLL. |
| kll_sketch_get_n_double(эскиз) | Возвращает количество элементов в двойном эскизе KLL. |
| kll_sketch_get_n_float(эскиз) | Возвращает количество элементов в эскизе с плавающей запятой KLL. |
| kll_sketch_get_quantile_bigint(эскиз, ранг) | Оценивает значение на заданном квантильном ранге из целочисленного KLL-эскиза. |
| kll_sketch_get_quantile_double(эскиз, ранг) | Оценивает значение на заданном ранге квантиля из двойного набора данных KLL. |
| kll_sketch_get_quantile_float(эскиз, ранг) | Оценивает значение на заданном квантильном ранге из эскиза с плавающей запятой KLL. |
| kll_sketch_get_rank_bigint(эскиз, значение) | Оценивает нормализованный ранг значения в целочисленном эскизе KLL. |
| kll_sketch_get_rank_double(эскиз, значение) | Оценивает нормализованный ранг значения в двойном эскизе KLL. |
| kll_sketch_get_rank_float(эскиз, значение) | Оценивает нормализованный ранг значения в слоящихся распределениях KLL. |
| kll_sketch_merge_bigint(sketch1, sketch2) | Объединяет два совместимых целочисленных наброска KLL. |
| kll_sketch_merge_double(sketch1, sketch2) | Объединяет два совместимых двойных эскиза KLL. |
| kll_sketch_merge_float(sketch1, sketch2) | Объединяет два совместимых float KLL эскиза. |
| kll_sketch_to_string_bigint(эскиз) | Возвращает удобочитаемое строковое представление целочисленного эскиза KLL. |
| kll_sketch_to_string_double(эскиз) | Возвращает удобочитаемое строковое представление двойного эскиза KLL. |
| kll_sketch_to_string_float(эскиз) | Возвращает удобочитаемое пользователем строковое представление эскиза с плавающей запятой KLL. |
| ln(expr) | Возвращает натуральный логарифм (с основанием e) от expr. |
| log([base,] expr) | Возвращает логарифм expr по основанию base. |
| log1p(expr) | Возвращает log(1 + expr). |
| log2(expr) | Возвращает логарифм expr с основанием 2. |
| log10(expr) | Возвращает логарифм expr с основанием 10. |
| mod(дивиденд, делитель) | Возвращает остаток от деления на dividend / divisor. |
| nanvl(expr1, expr2) | Возвращает expr1, если не NaN, или expr2 в противном случае. |
| negative(expr) | Возвращает отрицательное значение expr. |
| 'nullifzero(expr)' | Возвращает значение expr , если оно не равно нулю или в NULL противном случае. |
| pi() | Возвращает pi. |
| pmod(дивиденды, делитель) | Возвращает положительный остаток после dividend / divisor. |
| positive(expr) | Возвращает значение expr. |
| pow(expr1, expr2) | Возводит expr1 в степень expr2. |
| power(expr1, expr2) | Возводит expr1 в степень expr2. |
| radians(expr) | Преобразует выражение expr в градусах в радианы. |
| rand([seed]) | Возвращает случайное значение от 0 до 1. |
| randn([seed]) | Возвращает случайное значение из стандартного нормального распределения. |
| random([seed]) | Возвращает случайное значение от 0 до 1. |
| rint(expr) | Возвращает expr, округлённый до целого числа, как DOUBLE. |
| round(expr[,targetScale]) | Возвращает значение expr, округленное с использованием режима округления HALF_UP. |
| sec(expr) | Возвращает секанс значения expr. |
| shiftleft(expr, n) | Возвращает число, полученное в результате побитового сдвига влево на n бит. |
| shiftright(expr, n) | Возвращает побитово сдвинутое вправо целочисленное число со знаком на n бит. |
| shiftrightunsigned(expr, n) | Возвращает результат побитового сдвига вправо целочисленного числа, рассматриваемого как беззнаковое, на n бит. |
| sign(expr) | Возвращает значение -1.0, 0.0 или 1.0 в зависимости от того, является ли значение expr отрицательным, нулевым или положительным. |
| signum(expr) | Возвращает значение -1.0, 0.0 или 1.0 в зависимости от того, является ли значение expr отрицательным, нулевым или положительным. |
| sin(expr) | Возвращает синус expr. |
| sinh(expr) | Возвращает гиперболический синус expr. |
| smallint(expr) | Приведение значения expr к SMALLINT. |
| sqrt(expr) | Возвращает квадратный корень expr. |
| tan(expr) | Возвращает тангенс expr. |
| tanh(expr) | Возвращает гиперболический тангенс expr. |
| tinyint(expr) | Приведение expr к TINYINT. |
| to_number(expr, fmt) | Возвращает expr, приведённый к DECIMAL, с использованием форматирования fmt. |
| try_add(expr1, expr2) | Возвращает сумму expr1 и expr2(или NULL ) в случае ошибки. |
| try_divide(делимое, делитель) | Возвращает dividend, деленное на divisor, или NULL, если divisor равно 0. |
| try_mod(дивиденды, делитель) | Возвращает остаток после dividend / divisor, или NULL, если divisor равно 0. |
| try_multiply(множитель, множимое) | Возвращает multiplier, умноженное на multiplicand,или NULL при переполнении. |
| try_subtract(expr1, expr2) | Возвращает результат вычитания expr2 из expr1 или NULL при переполнении. |
| try_to_number(expr, fmt) | Возвращает expr, приведённое к DECIMAL, с использованием форматирования fmt, или NULL, если expr с форматом не соответствует. |
| uniform(expr1, expr2 [,seed]) | Возвращает случайное значение с независимыми и идентичными распределенными значениями в указанном диапазоне чисел. |
| width_bucket(expr, minExpr, maxExpr, numBuckets) | Возвращает номер контейнера для значения в гистограмме равной ширины. |
| 'zeroifnull(expr)' | Возвращает expr, если это не NULL, или 0 в противном случае. |
Агрегатные функции
| Function | Description |
|---|---|
| any(expr) | Возвращает значение true, если хотя бы одно значение expr в группе имеет значение true. |
| any_value(expr[,ignoreNull]) | Возвращает некоторое значение expr для группы строк. |
| approx_count_distinct(expr[,relativeSD]) | Возвращает предполагаемое количество уникальных значений в expr в группе. |
| approx_percentile(expr,percentage[,accuracy]) | Возвращает приблизительное значение процентиля expr в группе. |
| approx_top_k(expr[,k[,maxItemsTracked]]) | Возвращает значения k наиболее часто встречающихся элементов в выражении expr и их приблизительное количество. |
| array_agg(expr) | Возвращает массив, состоящий из всех значений в expr в группе. |
| avg(expr) | Возвращает среднее значение, вычисляемое из значений группы. |
| bit_and(expr) | Возвращает побитовое AND всех входных значений в группе. |
| bit_or(expr) | Возвращает побитовое OR всех входных значений в группе. |
| bit_xor(expr) | Возвращает побитовое XOR всех входных значений в группе. |
| bitmap_and_agg(expr) | Возвращает битовое AND значение всех BINARY входных значений в группе. |
| bitmap_construct_agg(expr) | Возвращает битовое OR значение всех битовых позиций в группе. от 0 до 32767 в группе, представленных в виде BINARY. |
| bitmap_or_agg(expr) | Возвращает битовое OR значение всех BINARY входных значений в группе. |
| bool_and(expr) | Возвращает значение true, если в группе все значения в выражении expr имеют значение true. |
| bool_or(expr) | Возвращает значение true, если хотя бы одно значение в выражении expr в группе имеет значение true. |
| collect_list(expr) | Возвращает массив, состоящий из всех значений в expr в группе. |
| collect_set(expr) | Возвращает массив, содержащий все уникальные значения из expr в рамках группы. |
| corr(expr1,expr2) | Возвращает коэффициент Пирсона для корреляции между группой пар чисел. |
| count(*) | Возвращает общее число извлеченных строк в группе, включая строки, содержащие значение NULL. |
| count(expr[, ...]) | Возвращает количество строк в группе, для которых указанные выражения имеют значения, отличные от NULL. |
| count_if(expr) | Возвращает число истинных значений для группы в expr. |
| count_min_sketch(column,epsilon,confidence,seed) | Возвращает эскиз count-min всех значений в группе column с epsilon, confidence и seed. |
| covar_pop(expr1,expr2) | Возвращает ковариацию генеральной совокупности для пар чисел в данной выборке. |
| covar_samp(expr1,expr2) | Возвращает ковариацию выборки для пар чисел в группе. |
| every(expr) | Возвращает значение true, если все значения в выражении expr в группе имеют значение true. |
| first(expr[,ignoreNull]) | Возвращает первое значение expr для группы строк. |
| first_value(expr[,ignoreNull]) | Возвращает первое значение expr для группы строк. |
| histogram_numeric(expr,numBins) | Вычисляет гистограмму expr с numBins ячейками, возвращая массив пар, представляющих центры ячеек. |
| hll_sketch_agg(expr[,lgConfigK]) | Возвращает структуру HyperLogLog, используемую для оценки количества уникальных значений. |
| hll_union_agg(expr[,allowDifferentLgConfigK]) | Агрегирует эскизы HyperLogLog для группы строк. |
| kll_sketch_agg_bigint(expr[, k]) | Возвращает эскиз KLL для приближения распределения целых значений в группе. |
| kll_sketch_agg_double(expr[, k]) | Возвращает эскиз KLL для приближения распределения двойных значений в группе. |
| kll_sketch_agg_float(expr[, k]) | Возвращает эскиз "KLL" для приближения распределения значений типа float в группе. |
| kurtosis(expr) | Возвращает значение эксцесса, вычисленное на основе значений группы. |
| last(expr[,ignoreNull]) | Возвращает последнее значение expr для группы строк. |
| last_value(expr[,ignoreNull]) | Возвращает последнее значение expr для группы строк. |
| listagg(expr[,delim]) [WITHIN GROUP (ORDER BY ключ [,...])] | Возвращает объединённое STRING или BINARY из всех значений в expr в группе, разделённых delim. |
| max(expr) | Возвращает максимальное значение expr в группе. |
| max_by(expr1,expr2) | Возвращает значение expr1, связанное с максимальным значением expr2 в группе. |
| mean(expr) | Возвращает среднее значение, вычисляемое из значений группы. |
| measure(measure_column) | Возвращает меру представления метрик, вычисляемого из значений группы. |
| median(expr) | Возвращает медиану, вычисляемую из значений группы. |
| min(expr) | Возвращает минимальное значение expr в группе. |
| min_by(expr1, expr2) | Возвращает значение expr1, связанное с минимальным значением expr2 в группе. |
| mode(expr [,deterministic]) | Возвращает наиболее частое значение NULL в группе, не равное expr. |
| percentile(expr, процент [,частота]) | Возвращает точное значение процентиля expr в указанном percentage. |
| percentile_approx(expr,percentage[,accuracy]) | Возвращает приблизительное значение процентиля expr в группе. |
| percentile_cont(pct) WITHIN GROUP (ORDER BY ключ) | Возвращает интерполированное значение процентиля key в группе. |
| percentile_disc(pct) WITHIN GROUP (ORDER BY ключ) | Возвращает дискретное значение процентиля key в группе. |
| regr_avgx(yExpr, xExpr) | Возвращает среднее значение xExpr, вычисленное из значений группы, когда xExpr и yExpr равны NOT NULL. |
| regr_avgy(yExpr, xExpr) | Возвращает среднее значение yExpr, вычисленное из значений группы, когда xExpr и yExpr равны NOT NULL. |
| regr_count(yExpr, xExpr) | Возвращает число пар значений yExpr и xExpr, отличных от NULL, в группе. |
| regr_intercept(yExpr, xExpr) | Возвращает отсекаемый отрезок линии линейной регрессии в группе, где xExpr и yExpr имеют значение, отличное от NULL. |
| regr_r2(yExpr, xExpr) | Возвращает коэффициент детерминации, вычисленный на основе значений группы, где xExpr и yExpr не равны NULL. |
| regr_slope(yExpr, xExpr) | Возвращает наклон линии линейной регрессии пар значений yExpr, xExpr, отличных от NULL, в группе. |
| regr_sxx(yExpr, xExpr) | Возвращает сумму квадратов значений xExpr группы, где xExpr и yExpr не равны NULL. |
| regr_sxy(yExpr, xExpr) | Возвращает сумму продуктов yExpr и xExpr, которые вычисляются из значений группы, где xExpr и yExpr являются NOT NULL. |
| regr_syy(yExpr, xExpr) | Возвращает сумму квадратов значений yExpr группы, где xExpr и yExpr не равны NULL. |
| schema_of_json_agg(json[, параметры]) | Возвращает объединенную схему JSON строк в группе в формате DDL. |
| schema_of_variant_agg(variantExpr) | Возвращает объединенную схему всех VARIANT значений в группе в формате DDL. |
| skewness(expr) | Возвращает значение отклонения, вычисляемое из значений группы. |
| some(expr) | Возвращает значение true, если хотя бы одно значение expr в группе имеет значение true. |
| std(expr) | Возвращает стандартное отклонение выборки, вычисленное по значениям в группе. |
| stddev(expr) | Возвращает стандартное отклонение выборки, вычисленное по значениям в группе. |
| stddev_pop(expr) | Возвращает стандартное отклонение совокупности, вычисленное по значениям группы. |
| stddev_samp(expr) | Возвращает стандартное отклонение выборки, вычисленное по значениям группы. |
| string_agg(expr[,delim]) [В ГРУППЕ (ORDER BY ключ [,...])] | Возвращает объединённое STRING или BINARY из всех значений в expr в группе, разделённых delim. |
| sum(expr) | Возвращает сумму, вычисленную на основе значений группы. |
| try_avg(expr) | Возвращает среднее значение, вычисляемое из значений группы, NULL если имеется переполнение. |
| try_sum(expr) | Возвращает сумму, вычисляемую из значений группы, NULL если имеется переполнение. |
| var_pop(expr) | Возвращает дисперсию популяции, вычисляемую из значений группы. |
| var_samp(expr) | Возвращает выборку дисперсии, вычисляемой из значений группы. |
| variance(expr) | Возвращает выборку дисперсии, вычисляемой из значений группы. |
Ранжирование функций окна
| Function | Description |
|---|---|
| dense_rank() | Возвращает ранг значения по сравнению со всеми значениями в разделе. |
| ntile(n) | Делит строки для каждой секции окна на n контейнеров, начиная от 1 до не более n. |
| percent_rank() | Вычисляет процентный ранг значения в разбиении. |
| rank() | Возвращает ранг значения по сравнению со всеми значениями в разделе. |
| row_number() | Присваивает каждой строке уникальный последовательный номер, начиная с единицы, в соответствии с порядком строк в разделе окна. |
Аналитические функции окон
| Function | Description |
|---|---|
| cume_dist() | Возвращает позицию значения относительно всех значений в разделе. |
| lag(expr[,offset[,default]]) | Возвращает значение expr из предыдущей строки в разделе. |
| lead(expr[,offset[,default]]) | Возвращает значение expr из последующей строки в разделе. |
| nth_value(expr, offset[, ignoreNulls]) | Возвращает значение expr в заданном offset в окне. |
Функции массива
| Function | Description |
|---|---|
| arrayExpr[indexExpr] | Возвращает элемент в позиции indexExpr массива arrayExpr. |
| aggregate(expr,start,merge[,finish]) | Объединяет элементы массива с помощью пользовательского агрегатора. |
| array([expr [, ...]]) | Возвращает массив с элементами в expr. |
| array_append(array, elem) - функция для добавления элемента в массив | Возвращает array, к которому добавлен elem. |
| array_compact(array) | Удаляет значения NULL из array. |
| array_contains(array,value) | Возвращает значение true, если array содержит value. |
| array_distinct(array) | Удаляет повторяющиеся значения из array. |
| array_except(array1,array2) | Возвращает массив элементов в array1, но не в array2. |
| array_insert(массив, индекс, элемент) | Возвращает развернутый array, где elem вставляется на позицию index. |
| array_intersect(array1,array2) | Возвращает массив элементов в пересечении array1 и array2. |
| array_join(array,delimiter[,nullReplacement]) | Объединяет элементы array. |
| array_max(array) | Возвращает максимальное значение в array. |
| array_min(array) | Возвращает минимальное значение в array. |
| array_position(array,element) | Возвращает позицию первого вхождения element в array. |
| array_prepend(array, elem) - добавляет элемент в начало массива. | Возвращает array предварительно заданное elemзначение. |
| array_remove(array,element) | Удаляет все вхождения element из array. |
| array_repeat(element,count) | Возвращает массив, содержащий elementcount раз. |
| array_size(array) | Возвращает количество элементов в array. |
| array_sort(array,func) | Возвращает массив array, отсортированный в соответствии с параметром func. |
| array_union(array1,array2) | Возвращает массив элементов в объединении array1 и array2 без дубликатов. |
| arrays_overlap(array1, array2) | Возвращает значение true, если пересечение array1 и array2 не является пустым. |
| arrays_zip(array1 [, ...]) | Возвращает объединенный массив структур, где n-я структура содержит все n-ые элементы из входных массивов. |
| cardinality(expr) | Возвращает размер expr. |
| concat(expr1, expr2 [, ...]) | Возвращает объединение аргументов. |
| element_at(arrayExpr, index) | Возвращает элемент arrayExpr в позиции index. |
| exists(expr, pred) | Возвращает значение true, если pred имеет значение true для любого элемента в expr. |
| explode(collection) | Возвращает строки путем отмены вложенности collection. |
| explode_outer(collection) | Возвращает строки путем отмены вложенности collection с использованием внешней семантики. |
| filter(expr,func) | Фильтрует массив в expr с помощью функции func. |
| flatten(arrayOfArrays) | Преобразует массив массивов в один массив. |
| forall(expr, predFunc) | Проверяет, выполняется ли predFunc для всех элементов в массиве. |
| get(arrayExpr, index) | Возвращает элемент из arrayExpr на index, начиная с 0. |
| inline(input) | Преобразует массив структур в таблицу. |
| inline_outer(input) | Разворачивает массив структур в таблицу, используя внешнюю логику. |
| posexplode(collection) | Возвращает строки, полученные путем отмены вложенности массива с нумерацией позиций. |
| posexplode_outer(collection) | Возвращает строки путем отмены вложенности массива с нумерацией позиций с использованием семантики OUTER. |
| reduce(expr,start,merge[,finish]) | Объединяет элементы массива с помощью пользовательского агрегатора. |
| reverse(array) | Возвращает обратную строку или массив с обратным порядком элементов. |
| sequence(start,stop,step) | Создает массив элементов от start до stop (включительно) с шагом step. |
| shuffle(array) | Возвращает случайную перестановку массива в expr. |
| size(expr) | Возвращает кратность expr. |
| slice(expr,start,length) | Возвращает подмножество массива. |
| sort_array(expr[,ascendingOrder]) | Возвращает массив в expr в отсортированном порядке. |
| transform(expr, func) | Преобразует элементы в массиве в expr с помощью функции func. |
| try_element_at(arrayExpr, index) | Возвращает элемент arrayExpr, расположенный на позиции index, или NULL, если index выходит за пределы допустимых значений. |
| zip_with(expr1, expr2, func) | Объединяет массивы в expr1 и expr2 поэлементно в один массив с помощью func. |
Функции карты
| Function | Description |
|---|---|
| mapExpr[keyExpr] | Возвращает значение в keyExpr из отображения mapExpr. |
| cardinality(expr) | Возвращает размер expr. |
| element_at(mapExpr, ключ) | Возвращает значение mapExpr для key. |
| explode(collection) | Возвращает строки путем отмены вложенности expr. |
| explode_outer(collection) | Возвращает строки путем отмены вложенности expr с использованием внешней семантики. |
| map([{key1, value1}[, ...]]) | Создает карту с указанными парами "ключ-значение". |
| map_concat([expr1 [, ...]]) | Возвращает объединение всех выражений отображения expr. |
| map_contains_key(карта, ключ) | Возвращает true, если map содержит key, в противном случае возвращает false. |
| map_entries(map) | Возвращает неупорядоченный массив всех записей в map. |
| map_filter(expr, func) | Фильтрует записи в карте expr с помощью функции func. |
| map_from_arrays(ключи, значения) | Создает карту с парой массивов keys и values. |
| map_from_entries(expr) | Создает карту, созданную из указанного массива записей. |
| map_keys(map) | Возвращает неупорядоченный массив, содержащий ключи map. |
| map_values(map) | Возвращает неупорядоченный массив, содержащий значения map. |
| map_zip_with(map1, map2, func) — Эта функция объединяет элементы из двух карт (map1 и map2) с помощью функции (func). | Объединяет map1 и map2 в единую карту. |
| size(expr) | Возвращает кратность expr. |
| str_to_map(expr[,pairDelim[,keyValueDelim]]) | Возвращает карту после разделения expr на пары "ключ-значение" с помощью разделителей. |
| transform_keys(expr, func) | Преобразует ключи в объекте отображения в expr с помощью функции func. |
| transform_values(expr, func) | Преобразует значения в сопоставлении в expr с помощью функции func. |
| try_element_at(mapExpr, ключ) | Возвращает значение mapExpr для key или NULL, если key не существует. |
Функции даты, меток времени и интервалов
Сведения о форматах меток даты и времени см. в шаблонах Datetime.
| Function | Description |
|---|---|
| intervalExpr / divisor | Возвращает интервал, деленный на divisor. |
| - intervalExpr | Возвращает отрицательное значение intervalExpr. |
| intervalExpr1 — intervalExpr2 | Возвращает результат вычитания intervalExpr2 из intervalExpr1. |
| datetimeExpr1 — datetimeExpr2 | Возвращает результат вычитания datetimeExpr2 из datetimeExpr1. |
| + intervalExpr | Возвращает значение intervalExpr. |
| intervalExpr1 + intervalExpr2 | Возвращает сумму intervalExpr1 и intervalExpr2. |
| intervalExpr * умножение | Возвращает значение intervalExpr, умноженное на multiplicand. |
| abs(expr) | Возвращает абсолютное значение интервала в expr. |
| add_months(startDate,numMonths) | Возвращает дату numMonths после startDate. |
| curdate() | Возвращает текущую дату на момент начала обработки запроса. |
| current_date() | Возвращает текущую дату на момент начала обработки запроса. |
| current_timestamp() | Возвращает текущую метку времени на момент начала вычисления запроса. |
| current_timezone() | Возвращает локальный часовой пояс текущего сеанса. |
| date(expr) | Приводит значение expr к типу DATE. |
| date_add(startDate,numDays) | Возвращает дату numDays после startDate. |
| date_add(единица, значение, экспр) | Добавляет value(unit) к временной метке expr. |
| date_diff(единица, запуск, остановка) | Возвращает разницу между двумя метками времени, измеряемую в unit. |
| date_format(expr,fmt) | Преобразует метку времени в строку в формате fmt. |
| date_from_unix_date(days) | Создает дату согласно количеству дней, прошедших после 1970-01-01. |
| date_part(field,expr) | Извлекает часть даты, метки времени или интервала. |
| date_sub(startDate,numDays) | Возвращает дату numDays до startDate. |
| date_trunc(unit,expr) | Возвращает метку времени, усеченную до единицы измерения, указанной в параметре unit. |
| dateadd(startDate,numDays) | Возвращает дату numDays после startDate. |
| dateadd(unit, value, expr) | Добавляет value(unit) к временной метке expr. |
| datediff(endDate,startDate) | Возвращает число дней с startDate до endDate. |
| datediff(единица, начало, конец) | Возвращает разницу между двумя метками времени, измеряемую в unit. |
| day(expr) | Возвращает день месяца для даты или временной метки. |
| dayname(expr) | Возвращает трехбуквенный английский акроним для дня недели для указанной даты. |
| dayofmonth(expr) | Возвращает день месяца для даты или временной метки. |
| dayofweek(expr) | Возвращает день недели для даты или метки времени. |
| dayofyear(expr) | Возвращает день года для даты или отметки времени. |
| делитель div дивиденд | Возвращает целую часть деления интервала divisor на интервал dividend. |
| extract(поле ИЗ источника) | Возвращает значение field из source. |
| from_unixtime(unixTime,fmt) | Возвращает unixTime в fmt. |
| from_utc_timestamp(expr,timezone) | Возвращает метку времени на UTC для метки времени expr на timeZone. |
| getdate() | Возвращает текущую метку времени на момент начала вычисления запроса. |
| hour(expr) | Возвращает часовую составляющую метки времени. |
| last_day(expr) | Возвращает последний день месяца, к которому принадлежит дата. |
| make_date(year,month,day) | Создает дату на основе полей year, month и day. |
| make_dt_interval([дни[, часы[, минуты[, секунды]]]]) | Создает интервал времени дня на основе days, hours, mins и secs. |
| make_interval(годы, месяцы, недели, дни, часы, минуты, сек) | Не рекомендуется: создает интервал на основе years, months, weeks, days, hours, mins и secs. |
| make_timestamp(year,month,day,hour,min,sec[,timezone]) | Создает метку времени на основе полей year, month, day, hour, min, sec и timezone. |
| make_ym_interval([годы[, месяцы]]) | Создает интервал год-месяц из years и months. |
| minute(expr) | Возвращает минутную часть метки времени в expr. |
| month(expr) | Возвращает компонент месяца для метки времени в expr. |
| months_between(expr1,expr2[,roundOff]) | Возвращает число месяцев, прошедших между датами или метками времени в expr1 и expr2. |
| next_day(expr,dayOfWeek) | Возвращает первую дату, которая позже expr и называется dayOfWeek. |
| now() | Возвращает текущую метку времени на момент начала вычисления запроса. |
| quarter(expr) | Возвращает квартал года для expr в диапазоне от 1 до 4. |
| second(expr) | Возвращает второй компонент метки времени в expr. |
| session_window(expr, gpDuration) | Создает окно сеанса на основе выражения метки времени. |
| sign(expr) | Возвращает значение -1.0, 0.0 или 1.0 в зависимости от того, является ли интервал expr отрицательным, равным 0 или положительным. |
| signum(expr) | Возвращает значение -1.0, 0.0 или 1.0 в зависимости от того, является ли интервал expr отрицательным, равным 0 или положительным. |
| timediff(единица, начало, конец) | Возвращает разницу между двумя метками времени, измеряемую в unit. |
| timestamp(expr) | Приведение expr к TIMESTAMP. |
| timestamp_micros(expr) | Создает метку времени в expr микросекунд с начала эпохи UTC. |
| timestamp_millis(expr) | Создает отметку времени с точностью до expr миллисекунд, начиная с эпохи UTC. |
| timestamp_seconds(expr) | Создает метку времени на expr секунд с начала эпохи UTC. |
| timestampadd(единица, значение, выражение) | Добавляет value(unit) к временной метке expr. |
| timestampdiff(единица, начало, конец) | Возвращает разницу между двумя метками времени, измеряемую в unit. |
| to_date(expr[,fmt]) | Возвращает значение expr, приведенное к дате, с применением необязательного форматирования. |
| to_timestamp(expr[,fmt]) | Возвращает expr, преобразованное к временной метке с использованием необязательного форматирования. |
| to_unix_timestamp(expr[,fmt]) | Возвращает метку времени в expr в виде метки времени UNIX. |
| to_utc_timestamp(expr,timezone) | Возвращает метку времени на UTC для метки времени expr на timezone. |
| trunc(expr, fmt) | Возвращает дату, часть которой усечена до единицы времени, указанной с помощью модели формата fmt. |
| try_add(expr1, expr2) | Возвращает сумму expr1 и expr2, или NULL в случае ошибки. |
| try_divide(делимое, делитель) | Возвращает значение dividend, поделенное на divisor, или значение NULL, если divisor равно 0. |
| try_multiply(множитель, множимое) | Возвращает multiplier, умноженное на multiplicand,или NULL при переполнении. |
| try_subtract(expr1, expr2) | Возвращает результат вычитания expr2 из expr1 или NULL при переполнении. |
| try_to_timestamp(expr[,fmt]) | Возвращает результат приведения expr к временной метке с использованием необязательного форматирования или NULL в случае неудачи приведения. |
| unix_date(expr) | Возвращает число дней, прошедших с 1970-01-01. |
| unix_micros(expr) | Возвращает число микросекунд, прошедших с 1970-01-01 00:00:00 UTC. |
| unix_millis(expr) | Возвращает число миллисекунд, прошедших с 1970-01-01 00:00:00 UTC. |
| unix_seconds(expr) | Возвращает число секунд, прошедших с 1970-01-01 00:00:00 UTC. |
| unix_timestamp([expr[, fmt]]) | Возвращает метку времени UNIX для текущего или указанного времени. |
| weekday(expr) | Возвращает день недели для expr. |
| weekofyear(expr) | Возвращает номер недели года для expr. |
| year(expr) | Возвращает компонент года из expr. |
| window(expr, width[, step[, start]]) | Создает скользящее окно на основе прыжка через выражение метки времени. |
| window_time(window) | Возвращает инклюзивное время окончания скользящего окна, созданного функциями window или session_window. |
Геопространственные функции H3
Для получения информации о геопространственных функциях H3 см. раздел Геопространственные функции H3.
Геопространственные функции ST
Сведения о геопространственных функциях ST см. в разделе " Геопространственные функции ST".
Функции кастинга и конструкторы
См. сведения о приведении между типами в разделе cast "Функция " и try_cast "Функция".
| Function | Description |
|---|---|
| array([expr [, ...]]) | Возвращает массив с элементами в expr. |
| bigint(expr) | Приведение значения expr к BIGINT. |
| binary(expr) | Преобразует значение expr в BINARY. |
| boolean(expr) | Приведение expr к BOOLEAN. |
| cast(тип EXPR AS) | Приводит значение expr к типу данных type. |
| expr :: тип | Приводит значение expr к типу данных type. |
| date(expr) | Приведение значения expr к DATE. |
| decimal(expr) | Приведение значения expr к DECIMAL. |
| double(expr) | Приведение значения expr к DOUBLE. |
| float(expr) | Приведение значения expr к FLOAT. |
| int(expr) | Приведение значения expr к INTEGER. |
| make_date(year,month,day) | Создает дату на основе полей year, month и day. |
| make_dt_interval([дни[, часы[, минуты[, секунды]]]]) | Создает интервал времени дня на основе days, hours, mins и secs. |
| make_interval(годы, месяцы, недели, дни, часы, минуты, сек) | Создает интервал из years, months, weeks, days, hours, mins и secs. |
| make_timestamp(year,month,day,hour,min,sec[,timezone]) | Создает метку времени на основе полей year, month, day, hour, min, sec и timezone. |
| make_ym_interval([годы[, месяцы]]) | Создает интервал год-месяц из years и months. |
| map([{key1, value1} [, ...]]) | Создает карту с указанными парами "ключ-значение". |
| named_struct({name1, val1} [, ...]) | Создает структуру с указанными именами полей и значениями. |
| smallint(expr) | Приведение значения expr к SMALLINT. |
| string(expr) | Приведение значения expr к STRING. |
| struct(expr1 [, ...]) | Создает STRUCT с указанными значениями полей. |
| tinyint(expr) | Приведение expr к TINYINT. |
| timestamp(expr) | Приведение expr к TIMESTAMP. |
| to_char(expr, fmt) | Возвращает приведение expr к STRING с использованием форматирования fmt. |
| to_date(expr[,fmt]) | Возвращает значение expr, приведенное к дате, с применением необязательного форматирования. |
| to_number(expr, fmt) | Возвращает результат приведения expr к типу DECIMAL с использованием форматирования fmt. |
| to_timestamp(expr[,fmt]) | Возвращает expr, преобразованное к временной метке с использованием необязательного форматирования. |
| to_varchar(expr, fmt) | Возвращает приведение expr к STRING с использованием форматирования fmt. |
| try_cast(тип EXPR AS) | Приводит значение expr к типу данных type безопасным образом. |
| попытка_преобразования_в_число(expr, fmt) | Возвращает expr приведенным к DECIMAL с использованием форматирования fmt, или NULL, если expr недопустимо. |
Функции CSV и Avro
| Function | Description |
|---|---|
| from_avro(avroBin, jsonSchema[, options]) | Возвращает значение структуры на основе avroBin и jsonSchema. |
| from_csv(csvStr, схема[, параметры]) | Возвращает значение структуры с использованием csvStr и schema. |
| schema_of_csv(csv[, параметры]) | Возвращает схему строки CSV в формате DDL. |
| to_avro(expr[, options]) | Возвращает двоичное значение в формате Avro для заданного значения структуры. |
| to_csv(expr[, options]) | Возвращает строку CSV с указанным значением структуры. |
Функций JSON
| Function | Description |
|---|---|
| jsonStr : jsonPath | Возвращает поля, извлеченные из jsonStr. |
| from_json(jsonStr, schema[, options]) | Возвращает значение структуры с использованием jsonStr и schema. |
| get_json_object(expr, path) | Извлекает JSON объект из path. |
| json_array_length(jsonArray) | Возвращает количество элементов в самом внешнем JSON массиве. |
| json_object_keys(jsonObject) | Возвращает все ключи самого внешнего JSON объекта в виде массива. |
| json_tuple(jsonStr, path1 [, ...]) | Возвращает несколько JSON объектов в качестве кортежа. |
| parse_json(jsonStr) | Возвращает VARIANT значение из jsonStr. |
| schema_of_json(jsonStr[, options]) | Возвращает схему JSON строки в формате DDL. |
| schema_of_json_agg(jsonStr[, options]) | Возвращает объединенную схему JSON строк в группе в формате DDL. |
| to_json(expr[, options]) | Возвращает строку JSON с STRUCT или VARIANT, указанными в expr. |
Функции VARIANT
| Function | Description |
|---|---|
| variantExpr : jsonPath | Возвращает поля, извлеченные из variantExpr с использованием пути JSON. |
| is_variant_null(variantExpr) | Проверяет, является ли variantExpr закодированным с использованием VARIANT в качестве кодировки NULL. |
| parse_json(jsonStr) | Возвращает VARIANT значение из jsonStr. |
| schema_of_variant(variantExpr) | Возвращает схему выражения VARIANT в формате DDL. |
| schema_of_variant_agg(variantExpr) | Возвращает объединенную схему всех VARIANT значений в группе в формате DDL. |
| to_json(expr[, options]) | Возвращает строку JSON с STRUCT или VARIANT, указанными в expr. |
| to_variant_object(expr) | Преобразует сложное выражение (ARRAY, MAP, STRUCT) в VARIANT, при этом отображения и структуры преобразуются в объекты variant. |
| try_parse_json(jsonStr) | Если возможно, возвращает значение из VARIANT в jsonStr. Если это невозможно, NULL возвращается. |
| try_variant_get(variantExpr,path,type) | Извлекает значение типа type из variantExpr, указанного с path, или NULL, если невозможно привести к целевому типу. |
| variant_explode(input) | Возвращает набор строк, извлекая элементы из input. |
| variant_explode_outer(input) | Возвращает набор строк путем отмены вложения input с помощью внешней семантики. |
| variant_get(variantExpr,path,type) | Извлекает значение типа type из variantExpr, указанного path. |
Функции XPath и XML
| Function | Description |
|---|---|
| from_xml(xmlStr, schema[, options]) | Возвращает значение структуры, проанализированное из xmlStr с помощью schema. |
| schema_of_xml(xmlStr[, параметры]) | Возвращает схему XML строки в формате DDL. |
| xpath(xml, xpath) | Возвращает значения в узлах xml, которые соответствуют xpath. |
| xpath_boolean(xml, xpath) | Возвращает true, если выражение xpath имеет значение true, или если найден соответствующий узел в xml. |
| xpath_double(xml, xpath) |
DOUBLE Возвращает значение из XML-документа. |
| xpath_float(xml, xpath) |
FLOAT Возвращает значение из XML-документа. |
| xpath_int(xml, xpath) |
INTEGER Возвращает значение из XML-документа. |
| xpath_long(xml, xpath) |
BIGINT Возвращает значение из XML-документа. |
| xpath_number(xml, xpath) |
DOUBLE Возвращает значение из XML-документа. |
| xpath_short(xml, xpath) |
SHORT Возвращает значение из XML-документа. |
| xpath_string(xml, xpath) | Возвращает содержимое первого XML-узла, соответствующего выражению XPath. |
Функции ИИ
| Function | Description |
|---|---|
| ai_analyze_sentiment(content) | Возвращает эмоциональный настрой текста. |
| ai_classify(содержимое, метки) | Классифицирует предоставленное содержимое в одну из предоставленных меток. |
| ai_extract(содержимое, метки) | Извлекает сущности, указанные метками из заданного текста. |
| ai_fix_grammar(content) | Исправляет грамматические ошибки в заданном тексте. |
| ai_forecast(наблюдаемые данные, time_col) | Экстраполирует данные временных рядов на будущее. |
| ai_gen(content) | Вызывает передовую генерирующую модель искусственного интеллекта из API моделей Databricks Foundation, чтобы ответить на предоставленный пользователем запрос. |
| ai_generate_text(prompt, modelName[, param1, value1] [...]) | Устаревшая функция: возвращает текст, созданный выбранной крупной языковой моделью (LLM) на основе заданного запроса. |
| ai_mask(содержимое, метки) | Маскирует указанные сущности в заданном тексте. |
| ai_query(endpointName, request, returnType) | Вызывает существующую конечную точку обслуживания модели ИИ Мозаики, анализирует её ответ и возвращает его. |
| ai_similarity(strExpr1, strExpr2) | Сравнивает две строки и вычисляет семантический показатель сходства. |
| ai_summarize(content[, max_words]) | Создает сводку заданного текста. |
| ai_translate(содержимое, to_lang) | Преобразует текст на указанный целевой язык. |
| vector_search(индекс, запрос, num_results) | Выполните запрос к индексу Mosaic AI Vector Search с помощью SQL. |
Функции чтения
| Function | Description |
|---|---|
| read_files(path, [optionKey => optionValue] [, ...]) | Считывает файлы данных в облачном хранилище и возвращает его в табличном формате. |
| read_kafka([optionKey => optionValue] [, ...]) | Считывает записи из кластера Apache Kafka и возвращает его в табличном формате. |
| read_kinesis({parameter => value} [, ...]) | Возвращает таблицу с записями, считываемыми из Kinesis из одного или нескольких потоков. |
| read_pubsub([параметр => значение] [, ...]) | Табличная функция для чтения записей из Pub/Sub из темы. |
| read_pulsar({optionKey => optionValue} [, ...]) | Возвращает таблицу с записями, считываемыми из Pulsar. |
| read_state_metadata(path) | Возвращает таблицу со строками, представляющими метаданные состояния потокового запроса. |
| read_statestore(path [, option_key => option_value] [...]) | Возвращает записи из хранилища состояний потоковых запросов. |
| remote_query(connectionName [, connectorOptionKey => connectorOptionValue] [...]) | Возвращает табличный результат запроса, выполняемого на удаленном ядре СУБД. |
Прочие функции
| Function | Description |
|---|---|
| assert_true(expr) | Возвращает ошибку, если expr не является истинным. |
| CASE expr { WHEN opt1 THEN res1 } [...] [ELSE def] КОНЕЦ | Возвращает resN для первого optN, равного expr, или def, если совпадений нет. |
| CASE { WHEN COND1 THEN RES1 } [...] [ELSE def] КОНЕЦ | Возвращает resN для первого condN, который оценивается как true, или def, если ничего не найдено. |
| cloud_files_state( { TABLE(таблица) | контрольная точка } ) | Возвращает состояние файла на уровне источника автозагрузчика cloud_files. |
| coalesce(expr1, expr2 [, ...]) | Возвращает первый аргумент, отличный от NULL. |
| collations() | Возвращает список доступных параметров сортировки. |
| cube (expr1 [, ...]) | Создает многомерный куб, используя указанные столбцы выражений. |
| current_catalog() | Возвращает текущий каталог. |
| current_database() | Возвращает текущую схему. |
| current_metastore() | Возвращает текущий идентификатор хранилища метаданных каталога Unity. |
| current_recipient(key) | Возвращает свойство для текущего получателя в представлении, к которому предоставлен общий доступ через Delta Sharing. |
| current_schema() | Возвращает текущую схему. |
| current_user() | Возвращает пользователя, который выполняет инструкцию. |
| current_version() | Возвращает текущую версию Azure Databricks. |
| decode(expr, { key, value } [, ...] [,defValue]) | Возвращает значение, соответствующее ключу. |
| elt(index, expr1 [, ...] ) | Возвращает n-е выражение. |
| equal_null(expr1, expr2) | Возвращает значение true, если expr1 равно expr2 или оба выражения имеют значение NULL или false в противном случае. |
| event_log( { TABLE(таблица) | pipeline_id } ) | Возвращает таблицу истории обновлений для материализованного представления, потоковой таблицы или конвейера. |
| greatest(expr1, expr2 [, ...]) | Возвращает максимальное значение из всех аргументов, пропуская значения NULL. |
| grouping(col) | Указывает, представляет ли указанный столбец в GROUPING SET, ROLLUPили CUBE промежуточный итог. |
| grouping_id([col1 [, ...]]) | Возвращает уровень группировки для набора столбцов. |
| hash(expr1 [, ...]) | Возвращает хэшированное значение аргументов. |
| hll_sketch_estimate(expr) | Оценивает количество уникальных значений, собранных в эскизе HyperLogLog. |
| hll_union(expr1, expr2 [, allowDifferentLgConfigK]) | Объединяет два эскиза HyperLogLog. |
| http_request({parm => expr} [, ...]) | Выполняет HTTP-запрос с помощью определенного HTTP-подключения. |
| java_method(класс, метод[, arg1 [, ...]]) | Вызывает метод с использованием рефлексии. |
| if(cond, expr1, expr2) | Возвращает expr1, если cond имеет значение true. В противном случае возвращает expr2. |
| iff(cond, expr1, expr2) | Возвращает expr1, если cond имеет значение true. В противном случае возвращает expr2. |
| ifnull(expr1, expr2) | Возвращает expr2, если expr1 имеет значение NULL. В противном случае возвращает expr1. |
| input_file_block_length() | Возвращает длину считанного блока в байтах. |
| input_file_block_start() | Возвращает начальное смещение в байтах считываемого блока. |
| input_file_name() | Возвращает имя считываемого файла или пустую строку, если оно недоступно. |
| is_account_group_member(group) | Возвращает значение true, если текущий пользователь является членом группы на уровне учетной записи. |
| is_member(group) | Возвращает значение true, если текущий пользователь является членом группы на уровне рабочей области. |
| isnull(expr) | Возвращает true, если expr равно NULL. |
| isnotnull(expr) | Возвращает true, если expr не равно NULL. |
| least(expr1, expr2 [, ...]) | Возвращает минимальное значение из всех аргументов, пропуская значения NULL. |
| list_secrets([scopeStr]) | Возвращает ключи из всех или одной из областей, просмотр которых пользователь авторизован в секретной службе Databricks. |
| luhn_check(numStr) | Возвращается true , если numStr выполняется проверка алгоритма Luhn . |
| monotonically_increasing_id() | Возвращает монотонно увеличивающиеся 64-разрядные целые числа. |
| nullif(expr1, expr2) | Возвращает NULL, если expr1 равно expr2. В противном случае возвращает expr1. |
| nvl(expr1, expr2) | Возвращает expr2, если expr1 имеет значение NULL. В противном случае возвращает expr1. |
| nvl2(expr1, expr2, expr3) | Возвращает expr2, если expr1 не равно NULL. В противном случае возвращает expr3. |
| raise_error(expr) | Создает исключение с сообщением expr. |
| range(end) | Возвращает таблицу значений в указанном диапазоне. |
| диапазон(начало, конец [, шаг [, числоЧастей]]) | Возвращает таблицу значений в указанном диапазоне. |
| reflect(class, method[, arg1 [, ...]]) | Вызывает метод с использованием рефлексии. |
| secret(scope, key) | Извлекает значение секретного ключа с заданным scope и key из службы секретов Databricks. |
| session_user() | Возвращает пользователя, подключенного к Azure Databricks. |
| spark_partition_id() | Возвращает текущий идентификатор раздела. |
| sql_keywords() | Возвращает набор ключевых слов SQL в Azure Databricks. |
| stack(numRows, expr1 [, ...]) | Разделяет expr1, …, exprN на numRows строк. |
| table_changes(table_str, начало [, конец]) | Возвращает журнал изменений таблицы Delta Lake с включенным каналом данных об изменениях. |
| try_reflect(класс, метод[, arg1 [, ...]]) | Вызывает метод с использованием рефлексии, возвращая NULL, если метод не удаётся. |
| try_secret(область, ключ) | Извлекает значение секрета с заданным scope и key из секретной службы Databricks или NULL если ключ не удается извлечь. |
| typeof(expr) | Возвращает строку типа в формате DDL для типа данных expr. |
| user() | Возвращает пользователя, который выполняет инструкцию. |
| uuid() | Возвращает строку универсального уникального идентификатора (UUID). |
| window(expr, width[, step [, start]]) | Создает скользящее окно на основе прыжка через выражение метки времени. |
| xxhash64(expr1 [, ...]) | Возвращает хэшированное 64-битное значение аргументов. |
| version() | Возвращает версию Apache Spark. |