Встроенные функции
Область применения: Databricks SQL Databricks Runtime
В этой статье представлены ссылки на встроенные операторы и функции для строк и двоичных типов, числовые скаляры, агрегаты, окна, массивы, карты, метки времени, приведение, данные CSV, данные JSON, манипуляции XPath и другие другие функции.
Для вариантов использования, которые не поддерживаются существующими встроенными функциями, рекомендуется определить пользовательскую функцию. См. раздел "Что такое определяемые пользователем функции(ОПРЕДЕЛЯЕМЫЕ пользователем)?".
См. также:
Операторы и предикаты
Сведения о том, как операторы анализируются по отношению друг к другу, см. в разделе Приоритет операторов.
Оператор | Синтаксис | 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 ] |
Возвращает indexExpr элемент ARRAY arrayExpr nd объекта . |
[ ] | mapExpr [ keyExpr ] |
Возвращает значение по keyExpr значению MAP mapExpr . |
^ | 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 (не) соответствует каким-либо/всем шаблонам без учета регистра. |
в папке | elem [not] in (expr1[, ...]) |
Возвращает значение true , если elem (не) равно какому-либо exprN . |
в папке | elem [not] in (query) |
Возвращает значение true , если elem (не) равно какой-либо записи в query . |
is distinct | expr1 is [not] distinct from expr2 |
Проверяет, имеют ли аргументы разные или одинаковые values,where,NULL и считаются ли они сопоставимыми values. |
is false | expr is [not] false |
Проверяет, (не) имеет ли expr значение false . |
is null | expr is [not] null |
Возвращает true , если expr (не) равно NULL . |
is true | 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 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 . |
Приоритет операторов
Приоритет | Оператор |
---|---|
1 |
: , , :: ?:: [ ] |
2 |
- (unary), + (unary), ~ |
3 |
* , , / % div |
4 |
+ , , - \|\| |
5 | & |
6 | ^ |
7 | \| |
8 |
= , == <=> <> != < <= > >= |
9 |
not , exists |
10 |
between , in , rlike regexp ilike like is [not] [NULL, true, false] is [not] distinct from |
11 | and |
12 | or |
Строковые и двоичные функции
Function | Description |
---|---|
expr1 || expr2 | Возвращает результат объединения expr1 и expr2 . |
aes_decrypt(expr, key[, mode[, padding[, 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) | Возвращает количество битов, set в строке 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 . |
упорядочивание [для] (strExpr) | Возвращает схему сортировки, прикрепленную к strExpr . |
concat(expr1, expr2[, …]) | Возвращает объединение аргументов. |
concat(expr1, expr2[, …]) | Возвращает строки объединения, разделенные sep . |
contains(expr, subExpr) | Возвращает значение true , если expr STRING или BINARY содержит subExpr . |
crc32(expr) | Возвращает значение циклической проверки избыточности для expr . |
decode(expr, charSet) | Преобразует двоичный expr в строку, используя кодировку символов set и charSet . |
encode(expr, charSet) | Возвращает двоичное представление строки с использованием кодировки символов charSet . |
endswith(expr, endExpr) | Возвращает значение true , если expr STRING или BINARY заканчивается endExpr . |
find_in_set(searchExpr, sourceExpr) | Возвращает позицию строки в строках, разделённых запятыми list. |
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 . |
str like (pattern[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) | Возвращает длину строковых данных в байтах или число байтов двоичных данных. |
overlay(input PLACING replace FROM pos [FOR len]) | Заменяет input на replace , который начинается с pos и имеет длину len . |
overlay(input PLACING replace FROM pos [FOR 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) | Возвращает строку, которая повторяет expr n время. |
replace(str, search [, replace]) | Заменяет все вхождения 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 после удаления конечных символов. |
sentences(str[, lang, country]) | Разделяет str на массив массива слов. |
sha(expr) | Возвращает хэш-код sha1 в формате шестнадцатеричной строки для expr . |
sha1(expr) | Возвращает хэш-код sha1 в формате шестнадцатеричной строки для 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 , если expr STRING или 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 . |
substring(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 where, в котором все символы в from заменены на символы из to . |
trim([[BOTH | LEADING | TRAILING] [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(значение) | Возвращает значение, распаковаченное с помощью сжатия 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 (значение[,уровень[,streaming_mode]]) | Возвращает значение, сжатое с сжатием Zstandard. |
zstd_decompress(значение) | Возвращает значение, распаковаемое с помощью сжатия Zstandard. |
Числовые скалярные функции
Function | Description |
---|---|
~ expr | Возвращает значение побитового NOT для expr . |
dividend / divisor | Возвращает результат деления dividend на divisor . |
expr1 | expr2 | Возвращает побитовое значение OR для expr1 и expr2 . |
- expr | Возвращает значение, противоположное по знаку expr . |
expr1 - expr2 | Возвращает результат вычитания expr2 из expr1 . |
+ expr | Возвращает значение expr . |
expr1 + expr2 | Возвращает сумму expr1 и expr2 . |
dividend % divisor | Возвращает остаток операции dividend / divisor . |
expr1 ^ expr2 | Возвращает побитовое исключающее OR (XOR) значений expr1 и expr2 . |
expr1 & expr2 | Возвращает побитовое значение AND для expr1 и expr2 . |
multiplier * multiplicand | Возвращает значение 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) | Возвращает количество битов, set в аргументе. |
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_NTZ sourceTs sourceTz пояс targetTz в . |
cos(expr) | Возвращает косинус expr . |
cosh(expr) | Возвращает гиперболический косинус expr . |
cosh(expr) | Возвращает котангенс значения expr . |
csc(expr) | Возвращает косеканс значения expr . |
decimal(expr) | Приведение значения expr к DECIMAL . |
degrees(expr) | Преобразует радианы в градусы. |
divisor div dividend | Возвращает целую часть деления 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 . |
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) | Возвращает остаток операции dividend / divisor . |
nanvl(expr1, expr2) | Возвращает expr1 , если это не NaN . В противном случае возвращает expr2 . |
negative(expr) | Возвращает значение, противоположное по знаку expr . |
'nullifzero(expr)' | Возвращает значение expr , если оно не равно нулю или в NULL противном случае. |
pi() | Возвращает значение числа Пи. |
pmod(dividend, divisor) | Возвращает положительный остаток операции 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 . |
tanh(expr) | Приведение expr к TINYINT . |
to_number(expr, fmt) | Возвращает приведение expr к DECIMAL использованию форматирования fmt . |
try_add(expr1, expr2) | Возвращает сумму expr1 и expr2 (или NULL ) в случае ошибки. |
try_divide(dividend, divisor) | Возвращает dividend значение, divisor NULL разделенное divisor или равное 0. |
try_mod(дивиденды, делитель) | Возвращает оставшуюся часть после dividend / divisor или NULL divisor значение 0.. |
try_multiply(multiplier, multiplicand) | Возвращает multiplier , умноженное на multiplicand ,или NULL при переполнении. |
try_subtract(expr1, expr2) | Возвращает результат вычитания expr2 из expr1 или NULL при переполнении. |
try_to_number(expr, fmt) | Возвращает приведение expr к DECIMAL использованию форматирования fmt или NULL если expr формат не соответствует. |
униформы(expr1, expr2 [,seed]) | Возвращает случайное значение, обладающее независимым и идентично распределённым values, в указанном диапазоне чисел. |
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]) | Возвращает предполагаемое количество уникальных values в expr внутри группы. |
approx_percentile(expr,percentage[,accuracy]) | Возвращает приблизительное значение процентиля expr в группе. |
approx_top_k(expr[,k[,maxItemsTracked]]) | Возвращает верхние k наиболее часто встречающихся элементов values в expr вместе с их приблизительным числом. |
array_agg(expr) | Возвращает массив, состоящий из всех values в expr в группе. |
avg(expr) | Возвращает среднее значение, вычисляемое из values группы. |
bit_and(expr) | Возвращает битовый результат AND для всех входных данных values в группе. |
bit_or(expr) | Возвращает побитовый результат OR для всех входных values в группе. |
bit_xor(expr) | Возвращает результат побитовой операции XOR для всех входных данных values в группе. |
bitmap_construct_agg(expr) | Возвращает результирующую битовую операцию OR для всех битовых позиций values в группе. от 0 до 32767 в группе в виде BINARY . |
bitmap_or_agg(expr) | Возвращает побитовую OR всех BINARY входных values в группе. |
bool_and(expr) | Возвращает значение true, если все values в expr имеют значение true в группе. |
bool_or(expr) | Возвращает значение true, если хотя бы одно значение в выражении expr в группе имеет значение true. |
collect_list(expr) | Возвращает массив, содержащий все values в expr внутри группы. |
collect_set(expr) | Возвращает массив, состоящий из всех уникальных values в expr в группе. |
corr(expr1,expr2) | Возвращает коэффициент Пирсона для корреляции между группой пар чисел. |
count(*) | Возвращает общее число извлеченных строк в группе, включая строки, содержащие значение NULL. |
count(expr[, …]) | Возвращает количество строк в группе, для которых указанные выражения имеют значения, отличные от NULL. |
count_if(expr) | Возвращает количество истинных значений values для группы в expr . |
count_min_sketch(column, epsilon, confidence, seed) | Возвращает структуру данных "count-min sketch" для всех values в группе column с параметрами epsilon , confidence и seed . |
covar_pop(expr1,expr2) | Возвращает ковариацию генеральной совокупности для пар чисел в группе. |
covar_samp(expr1,expr2) | Возвращает ковариацию выборки для пар чисел в группе. |
every(expr) | Возвращает значение true, если все values из expr в группе равны true. |
first(expr[,ignoreNull]) | Возвращает первое значение expr для группы строк. |
first_value(expr[,ignoreNull]) | Возвращает первое значение expr для группы строк. |
histogram_numeric(expr,numBins) | Вычисляет гистограмму expr с numBins ячейками, возвращая массив пар, представляющих центры ячеек. |
hll_sketch_agg(expr[,lgConfigK]) | Возвращает эскиз HyperLogLog, используемый для приблизительного подсчёта уникальных элементов (values). |
hll_union_agg(expr[,allowDifferentLgConfigK]) | Агрегирует эскизы HyperLogLog для группы строк. |
kurtosis(expr) | Возвращает значение куртоза, вычисляемое из values группы. |
last(expr[,ignoreNull]) | Возвращает последнее значение expr для группы строк. |
last_value(expr[,ignoreNull]) | Возвращает последнее значение expr для группы строк. |
max(expr) | Возвращает максимальное значение expr в группе. |
max_by(expr1,expr2) | Возвращает значение expr1 , связанное с максимальным значением expr2 в группе. |
mean(expr) | Возвращает среднее значение, вычисляемое из values группы. |
median(expr) | Возвращает медиану, вычисляемую из values группы. |
min(expr) | Возвращает минимальное значение expr в группе. |
min_by(expr1, expr2) | Возвращает значение expr1 , связанное с минимальным значением expr2 в группе. |
mode(expr [,deterministic]) | Возвращает наиболее частое значение, а не NULL , которое является значением expr в группе. |
percentile(expr, percentage [,frequency]) | Возвращает точное значение процентиля expr в указанном percentage . |
percentile_approx(expr,percentage[,accuracy]) | Возвращает приблизительное значение процентиля expr в группе. |
percentile_cont(pct) WITHIN GROUP (ключORDER BY) | Возвращает интерполированное значение процентиля key в группе. |
функция percentile_disc(pct) в пределах группы (ключORDER BY) | Возвращает дискретное значение процентиля key в группе. |
regr_avgx(yExpr, xExpr) | Возвращает среднее значение xExpr , вычисленное из values группы, где wherexExpr и yExpr - это NOT NULL . |
regr_avgy(yExpr, xExpr) | Возвращает среднее значение yExpr , вычисленное из values в группе where, гдеxExpr и yExpr – это NOT NULL . |
regr_count(yExpr, xExpr) | Возвращает число пар значений yExpr и xExpr , отличных от NULL, в группе. |
regr_intercept(yExpr, xExpr) | Возвращает ординату пересечения одновариантной линии линейной регрессии в группе, где wherexExpr и yExpr не являются NULL. |
regr_r2(yExpr, xExpr) | Возвращает коэффициент детерминации при условии, что values группы, а также where,xExpr и yExpr не NULL. |
regr_slope(yExpr, xExpr) | Возвращает наклон линии линейной регрессии пар значений yExpr , xExpr , отличных от NULL, в группе. |
regr_sxx(yExpr, xExpr) | Возвращает сумму квадратов xExpr values для группы wherexExpr при условии, что yExpr не имеет значения NULL. |
regr_sxy(yExpr, xExpr) | Возвращает сумму продуктов yExpr и xExpr , вычисляемых из values группы wherexExpr и yExpr NOT NULL . |
regr_syy(yExpr, xExpr) | Возвращает сумму квадратов yExpr values из группы wherexExpr и yExpr , которые не являются NULL. |
schema_of_json_agg(json[, параметры]) | Возвращает объединенные schema строк JSON в группе в формате DDL. |
schema_of_variant_agg(variantExpr) | Возвращает объединённое значение schema всех VARIANT values в группе в формате DDL. |
skewness(expr) | Возвращает значение отклонений, вычисляемое из values группы. |
some(expr) | Возвращает значение true, если хотя бы одно значение expr в группе имеет значение true . |
std(expr) | Возвращает стандартное отклонение выборки, вычисленное из values внутри группы. |
stddev(expr) | Возвращает стандартное отклонение образца, вычисленное из values в группе. |
stddev_pop(expr) | Возвращает стандартное отклонение популяции, вычисленное из values группы. |
stddev_samp(expr) | Возвращает выборочное стандартное отклонение, вычисленное из values группы. |
sum(expr) | Возвращает сумму, вычисляемую из values группы. |
try_avg(expr) | Возвращает среднее значение, вычисляемое из values группы, NULL при наличии переполнения. |
try_sum(expr) | Возвращает сумму, вычисляемую из values группы, NULL при наличии переполнения. |
var_pop(expr) | Возвращает дисперсию населения, вычисляемую из values группы. |
var_samp(expr) | Возвращает выборочную дисперсию, вычисленную из values группы. |
variance(expr) | Возвращает выборочную дисперсию, вычисляемую из группы values. |
Ранжирование функций window
Function | Description |
---|---|
dense_rank() | Возвращает ранг значения по сравнению со всеми values в partition. |
ntile(n) | Делит строки для каждого windowpartition на n групп, в диапазоне от 1 до не более n . |
percent_rank() | Вычисляет процентное ранжирование значения в пределах partition. |
rank() | Возвращает ранг значения по сравнению со всеми values в partition. |
row_number() | Назначает уникальное последовательное число каждой строке, начиная с одной, в соответствии с порядком строк в windowpartition. |
Аналитические функции window
Function | Description |
---|---|
cume_dist() | Возвращает позицию значения относительно всех values в partition. |
lag(expr[,offset[,default]]) | Возвращает значение expr из предыдущей строки в partition. |
lead(expr[,offset[,default]]) | Возвращает значение expr из следующей строки внутри partition. |
nth_value(expr, offset[, ignoreNulls]) | Возвращает значение expr для определенного offset в window. |
Функции массива
Function | Description |
---|---|
arrayExpr[indexExpr] | Возвращает элемент в позиции indexExpr массива arrayExpr . |
aggregate(expr,start,merge[,finish]) | Выполняет статистическое вычисление элементов в массиве с помощью пользовательского агрегатора. |
array([expr [, …]]) | Возвращает массив с элементами в expr . |
array_append(array, elem) | Возвращается array , добавленный elem . |
array_compact(массив) | Удаляет значение NULL values из array . |
array_contains(array,value) | Возвращает значение true, если array содержит value . |
array_distinct(array) | Удаляет повторяющиеся values из array . |
array_except(array1,array2) | Возвращает массив элементов в array1 , но не в array2 . |
array_insert(массив, индекс, elem) | Возвращает развернутую array whereelem в положение 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) | Возвращает массив, element count содержащий время. |
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-е элементы из входных массивов values. |
cardinality(expr) | Возвращает размер expr . |
concat(expr1, expr2 [, …]) | Возвращает объединение аргументов. |
element_at(arrayExpr, index) | Возвращает элемент arrayExpr в позиции index . |
exists(expr, pred) | Возвращает значение true, если pred имеет значение true для любого элемента в expr . |
взрыв(коллекция) | Возвращает строки путем отмены вложенности collection . |
explode_outer(коллекция) | Возвращает строки путем отмены вложенности collection с использованием внешней семантики. |
filter(expr,func) | Фильтрует массив в expr с помощью функции func . |
flatten(arrayOfArrays) | Преобразует массив массивов в один массив. |
forall(expr, predFunc) | Проверяет, выполняется ли predFunc для всех элементов в массиве. |
get(arrayExpr, index) | Возвращает элемент at arrayExpr index , начиная с 0 . |
встроенный ввод | Взрывает массив структур в table. |
inline_outer(входные данные) | Взрывает массив структур в table с внешней семантикой. |
|
Возвращает строки, полученные путем отмены вложенности массива с нумерацией позиций. |
|
Возвращает строки путем отмены вложенности массива с нумерацией позиций с использованием семантики 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, key) | Возвращает значение mapExpr для key . |
взрыв(коллекция) | Возвращает строки путем отмены вложенности expr . |
explode_outer(коллекция) | Возвращает строки путем отмены вложенности expr с использованием внешней семантики. |
map([{key1, value1}[, …]]) | Создает сопоставление с указанными парами "ключ-значение". |
map_concat([expr1 [, …]]) | Возвращает объединение всех выражений сопоставления expr . |
map_contains_key(map, key) | Возвращает true , если map содержит key , в противном случае возвращает false . |
map_entries(map) | Возвращает неупорядоченный массив всех записей в map . |
map_filter(expr, func) | Фильтрует записи в сопоставлении в expr с помощью функции func . |
map_from_arrays(ключи, values) | Создает сопоставление с парой массивов keys и values . |
map_from_entries(expr) | Создает сопоставление на основе указанного массива записей. |
map_keys(map) | Возвращает неупорядоченный массив, содержащий ключи map . |
map_values(map) | Возвращает неупорядоченный массив, содержащий values из map . |
map_zip_with(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) | Преобразует values в карту в expr с помощью функции func . |
try_element_at(mapExpr, key) | Возвращает значение 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 * multiplicand | Возвращает значение intervalExpr , умноженное на multiplicand . |
abs(expr) | Возвращает абсолютное значение интервала в expr . |
add_months(startDate,numMonths) | Возвращает дату numMonths после startDate . |
curdate() | Возвращает текущую дату на момент начала обработки запроса. |
current_date() | Возвращает текущую дату на момент начала обработки запроса. |
current_timestamp() | Возвращает текущую метку времени на момент начала вычисления запроса. |
current_timezone() | Возвращает текущий локальный сеанс timezone. |
date(expr) | Приводит значение expr к типу DATE. |
date_add(startDate,numDays) | Возвращает дату через numDays дней после startDate . |
date_add(единица, значение, экспр) | Добавляет value unit s к метке 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 s к метке expr времени. |
datediff(endDate,startDate) | Возвращает число дней с startDate до endDate . |
datediff(unit, start, stop) | Возвращает разницу между двумя метками времени, измеряемыми в объектах unit . |
day(expr) | Возвращает день месяца для даты или метки времени. |
dayname(expr) | Возвращает трехбуквенный английский акроним для дня недели для указанной даты. |
dayofmonth(expr) | Возвращает день месяца для даты или метки времени. |
dayofmonth(expr) | Возвращает день недели для даты или метки времени. |
dayofyear(expr) | Возвращает день года для даты или метки времени. |
divisor div dividend | Возвращает целую часть деления интервала divisor на интервал dividend . |
extract(field FROM source) | Возвращает 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]]]]) | Создает интервал времени дня на основе days , hours , mins и secs . |
make_interval(years, months, weeks, days, hours, mins, secs) | Не рекомендуется: создает интервал на основе years , months , weeks , days , hours , mins и secs . |
make_timestamp(год,месяц,день,час,мин,сек[,timezone]) | Создает метку времени на основе полей year , month , day , hour , min , sec и timezone . |
make_ym_interval([years[, months]]) | Создает интервал из количества годов и месяцев на основе 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) | Создает сеанс-window на основе выражения метки времени. |
sign(expr) | Возвращает значение -1.0, 0.0 или 1.0 в зависимости от того, является ли интервал expr отрицательным, равным 0 или положительным. |
signum(expr) | Возвращает значение -1.0, 0.0 или 1.0 в зависимости от того, является ли интервал expr отрицательным, равным 0 или положительным. |
timediff(unit, start, stop) | Возвращает разницу между двумя метками времени, измеряемыми в объектах unit . |
timestamp(expr) | Приведение expr к TIMESTAMP . |
timestamp_micros(expr) | Создает метку времени, отстоящую на expr микросекунд от начала эпохи UTC. |
timestamp_micros(expr) | Создает отметку времени, отстоящую на expr миллисекунд от начала эпохи UTC. |
timestamp_seconds(expr) | Создает метку времени, отстоящую на expr секунд от начала эпохи UTC. |
timestampadd(unit, value, expr) | Добавляет value unit s к метке expr времени. |
timestampdiff(unit, start, stop) | Возвращает разницу между двумя метками времени, измеряемыми в объектах 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) | Возвращает значение dividend , поделенное на divisor , или значение NULL, если divisor равно 0. |
try_multiply(multiplier, multiplicand) | Возвращает 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 на основе прыжков через выражение метки времени. |
window_time(window) | Возвращает конечное время включения для скользящего окнаwindow, созданного функциями window или session_window. |
Геопространственные функции H3
Сведения о геопространственных функциях H3 см. в разделе H3 геопространственных функций.
Функции приведения и конструкторы
Сведения о приведении между типами см. в разделе функция cast и функция try_cast.
Function | Description |
---|---|
array([expr [, …]]) | Возвращает массив с элементами в expr . |
bigint(expr) | Приведение значения expr к BIGINT . |
binary(expr) | Приведение значения expr BINARY к . |
boolean(expr) | Приведение expr к BOOLEAN . |
cast(expr AS type) | Приводит значение expr к типу данных type . |
expr :: type | Приводит значение 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]]]]) | Создает интервал времени дня на основе days , hours , mins и secs . |
make_interval(years, months, weeks, days, hours, mins, secs) | Создает интервал из years , months , weeks , days , hours , mins и secs . |
make_timestamp(год,месяц,день,час,мин,сек[,timezone]) | Создает метку времени на основе полей year , month , day , hour , min , sec и timezone . |
make_ym_interval([years[, months]]) | Создает интервал из количества годов и месяцев на основе years и months . |
map([{key1, value1} [, …]]) | Создает сопоставление с указанными парами "ключ-значение". |
named_struct({name1, val1} [, …]) | Создает структуру с указанными именами полей и values. |
smallint(expr) | Приведение значения expr к SMALLINT . |
string(expr) | Приведение значения expr к STRING . |
struct(expr1 [, …]) | Создает STRUCT с указанным полем values. |
tanh(expr) | Приведение expr к TINYINT . |
timestamp(expr) | Приведение expr к TIMESTAMP . |
to_char(expr, fmt) | Возвращает приведение expr к STRING использованию форматирования fmt . |
to_date(expr[,fmt]) | Возвращает значение expr , приведенное к дате, с применением необязательного форматирования. |
to_number(expr, fmt) | Возвращает приведение expr к DECIMA L с помощью форматирования fmt . |
to_timestamp(expr[,fmt]) | Возвращает результат приведения expr к метке времени с использованием необязательного форматирования. |
to_varchar(expr, fmt) | Возвращает приведение expr к STRING использованию форматирования fmt . |
try_cast(expr AS type) | Приводит значение expr к типу данных type безопасным образом. |
try_to_number(expr, fmt) | Возвращает приведение expr к DECIMAL использованию форматирования fmt или NULL expr недопустимо. |
Функции CSV и Avro
Function | Description |
---|---|
from_avro(avroBin, jsonSchema[, options]) | Возвращает значение структуры на avroBin основе и jsonSchema . |
from_csv(csvStr, schema[, параметры]) | Возвращает значение структуры с использованием csvStr и schema . |
schema_of_csv(csv[, options]) | Возвращает schema строки CSV в формате DDL. |
to_avro(expr[, options]) | Возвращает двоичное значение Avro с указанным значением структуры. |
to_csv(expr[, options]) | Возвращает строку CSV с указанным значением структуры. |
Функций JSON
Function | Description |
---|---|
jsonStr : jsonPath | Возвращает поля, извлеченные из jsonStr . |
from_json(jsonStr, schema[, параметры]) | Возвращает значение структуры с использованием 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]) | Возвращает schema строки JSON в формате DDL. |
schema_of_json_agg(jsonStr[, options]) | Возвращает объединенные schema строк 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) | Возвращает значение schema выражения VARIANT в формате DDL. |
schema_of_variant_agg(variantExpr) | Возвращает объединенное schema всех VARIANT иvalues в группе в формате DDL. |
to_json(expr[, options]) | Возвращает строку JSON с STRUCT указанным или VARIANT указанным в expr . |
try_parse_json(jsonStr) |
VARIANT Возвращает значение из возможного jsonStr значения. Если это невозможно, NULL возвращается. |
try_variant_get(variantExpr,path,type) | Извлекает значение типа изtype , указанного variantExpr path или NULL если невозможно приведения к целевому типу. |
variant_explode(входные данные) | Возвращает set строк путем отмены вложения input . |
variant_explode_outer (входные данные) | Возвращает set строк путем отмены вложения input с помощью внешней семантики. |
variant_get(variantExpr,path,type) | Извлекает значение типа из type , указанного variantExpr path в . |
Функции XPath и XML
Function | Description |
---|---|
from_xml(xmlStr, schema[, параметры]) | Возвращает значение структуры, проанализированное с xmlStr помощью schema . |
schema_of_xml(xmlStr[, параметры]) | Возвращает schema для строки XML в формате DDL. |
xpath(xml, xpath) | Возвращает values в тех узлах 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(содержимое) | Возвращает тональность текста. |
ai_classify(содержимое, метки) | Классифицирует предоставленное содержимое в одну из предоставленных меток. |
ai_extract(содержимое, метки) | Извлекает сущности, указанные метками из заданного текста. |
ai_fix_grammar(содержимое) | Исправляет грамматические ошибки в заданном тексте. |
ai_forecast(наблюдаемые, time_col) | Экстрополирует данные временных рядов в будущем. |
ai_gen(содержимое) | Вызывает модель создания искусственного интеллекта из 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) | Запрос индекса поиска вектора вектора в виде мозаики с помощью SQL. |
Чтение функций
Function | Description |
---|---|
read_files(path, [optionKey => optionValue] [, ...]) | Считывает файлы данных в облачном хранилище и возвращает его в табличном формате. |
read_kafka([optionKey => optionValue] [, ...]) | Считывает записи из кластера Apache Kafka и возвращает его в табличном формате. |
read_kinesis({parameter => value} [, ...]) | Возвращает table с записями, считываемыми из Kinesis из одного или нескольких потоков. |
read_pubsub([параметр => значение] [, ...]) | Функция с типом table для чтения записей из Pub/Sub из темы. |
read_pulsar({optionKey => optionValue} [, ...]) | Возвращает table с записями, считываемыми из Pulsar. |
read_state_metadata(путь) | Возвращает table со строками, представляющими метаданные состояния потокового запроса. |
read_statestore(path [, option_key => option_value] [...]) | Возвращает записи из хранилища состояний потоковых запросов. |
Прочие функции
Function | Description |
---|---|
assert_true(expr) | Возвращает ошибку, если expr не имеет значения true. |
CASE expr { WHEN opt1 THEN res1 } […] [ELSE def] END | Возвращает resN для первого optN , равного expr , или def , если соответствия обнаружены не будут. |
CASE { WHEN cond1 THEN res1 } […] [ELSE def] END | Возвращает resN для первого condN , равного true, или def , если соответствия обнаружены не будут. |
cloud_files_state( { TABLE(table) | контрольная точка } ) | Возвращает состояние уровня файла источника автозагрузчика cloud_files . |
coalesce(expr1, expr2 [, …]) | Возвращает первый аргумент, отличный от NULL. |
колляции() | Возвращает list доступных параметров сортировки. |
cube (expr1 [, …]) | Создает многомерный куб с помощью указанного выражения columns. |
current_catalog() | Возвращает текущую catalog. |
current_database() | Возвращает текущую schema. |
current_metastore() | Возвращает текущий идентификатор хранилища метаданных Unity Catalog. |
current_recipient(ключ) | Возвращает свойство для текущего получателя в представлении, к которым предоставлен общий доступ к Delta Shared. |
current_schema() | Возвращает текущую 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(table) | pipeline_id } ) | Возвращает table истории refresh для материализованного представления, передачи данных tableили DLT-конвейера. |
greatest(expr1, expr2 [, ...]) | Возвращает наибольшее значение всех аргументов, пропуская значение NULL values. |
grouping(col) | Указывает, представляет ли указанный column в GROUPING SET , ROLLUP или CUBE промежуточный итог. |
grouping_id([col1 [, …]]) | Возвращает уровень группировки для set из columns. |
hash(expr1 [, …]) | Возвращает хэшированное значение аргументов. |
hll_sketch_estimate(expr) | Оценка количества различных values, собранных в скетче HyperLogLog. |
hll_union(expr1, expr2 [,allowDifferentLgConfigK]) | Объединяет два эскиза HyperLogLog. |
java_method(class, 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() | Возвращает начальную позицию offset в байтах считываемого блока. |
input_file_name() | Возвращает имя считываемого файла или пустую строку, если оно недоступно. |
is_account_group_member(группа) | Возвращает значение true, если текущий пользователь является членом группы на уровне учетной записи. |
is_member(group) | Возвращает значение true, если текущий пользователь является членом группы на уровне рабочей области. |
isnull(expr) | Возвращает true , если expr равно NULL . |
isnotnull(expr) | Возвращает true , если expr не равно NULL . |
least(expr1, expr2 [, ...]) | Возвращает наименьшее значение всех аргументов, пропуская значение NULL values. |
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) | Возвращает table из values в указанном диапазоне. |
range(start, end [, step [, numParts]]) | Возвращает tablevalues в указанном диапазоне. |
reflect(class, method[, arg1 [, …]]) | Вызывает метод с отражением. |
secret(scope, key) | Извлекает значение секрета с заданным scope и key из секретной службы Databricks. |
session_user() | Возвращает пользователя, подключенного к Azure Databricks. |
spark_partition_id() | Возвращает текущий идентификатор partition. |
sql_keywords() | Возвращает set ключевых слов SQL в Azure Databricks. |
stack(numRows, expr1 [, …]) | Разделяет expr1 , …, exprN на numRows строк. |
table_changes(table_str, start [, end]) | Возвращает журнал изменений в Delta Lake table с включенной функцией отслеживания изменений данных. |
try_reflect(класс, метод[, arg1 [, ...]]) | Вызывает метод с отражением, возвращая NULL , если метод завершается ошибкой. |
try_secret(область, ключ) | Извлекает значение секрета с заданным scope и key из секретной службы Databricks или NULL если ключ не удается извлечь. |
typeof(expr) | Возвращает строку отформатированного типа DDL для типа expr данных. |
user() | Возвращает пользователя, который выполняет инструкцию. |
uuid() | Возвращает универсальную уникальную строку identifier (UUID). |
window(expr, width[, step [, start]]) | Создает скользящееwindow на основе прыжков через выражение метки времени. |
xxhash64(expr1 [, …]) | Возвращает хэшированное 64-битное значение аргументов. |
version() | Возвращает версию Apache Spark. |