Funções internas
Aplica-se a: SQL do Databricks Databricks Runtime
Este artigo apresenta descrições e links para operadores internos e funções para cadeias de caracteres e tipos binários, escalares numéricos, agregações, janelas, matrizes, mapas, datas e carimbos de data/hora, conversão, dados CSV, dados JSON, manipulação XPath e outras funções diversas.
Para casos de uso que não são compatíveis com funções internas existentes, considere definir uma função personalizada. Consulte O que são UDFs (funções definidas pelo usuário)?.
Veja também:
Operadores e predicados
Para saber mais sobre como os operadores são analisados em relação uns aos outros, confira Precedência do operador.
Operador | Sintaxe | Descrição |
---|---|---|
& | expr1 & expr2 |
Retorna a operação bit a bit AND de expr1 e expr2 . |
and | expr1 and expr2 |
Retorna o lógico de AND de expr1 e expr2 . |
* | multiplier * multiplicand |
Retorna multiplier multiplicado por multiplicand . |
!= | expr1 != expr2 |
Retorna true se expr1 não for igual a expr2 , caso contrário, false . |
! | !expr |
Retorna a lógica NOT de uma expressão booliana. |
between | expr1 [not] between expr2 and expr2 |
Testa se expr1 é maior ou igual a expr2 e menor ou igual a expr3 . |
[ ] | arrayExpr [ indexExpr ] |
Retorna o indexExpr º elemento de ARRAY arrayExpr . |
[ ] | mapExpr [ keyExpr ] |
Retorna um valor keyExpr de MAP mapExpr . |
^ | expr1 ^ expr2 |
Retorna o OR (XOR) exclusivo bit a bit de expr1 e expr2 . |
: | jsonStr : jsonPath |
Retorna campos extraídos do jsonStr . |
:: | expr :: type |
Converte o valor expr no tipo de dados de destino type . |
?:: | expr ?:: type |
Converte o valor expr para o tipo de dados de destino type , se possível, e retorna NULL caso contrário. |
div | dividend div divisor |
Retorna a parte integral da divisão de dividend por divisor . |
. | mapExpr . keyIdentifier |
Retorna um valor MAP por keyIdentifier . |
. | structExpr . fieldIdentifier |
Retorna um campo STRUCT por fieldIdentifier . |
== | expr1 == expr2 |
Retorna true se expr1 é igual a expr2 , caso contrário, false . |
= | expr1 = expr2 |
Retorna true se expr1 é igual a expr2 , caso contrário, false . |
>= | expr1 >= expr2 |
Retorna true se expr1 for maior ou igual a expr2 ; caso contrário, false . |
> | expr1 > expr2 |
Retorna true se expr1 for maior que expr2 ; caso contrário, false . |
exists | exists(query) |
Retorna true se query retornar pelo menos uma linha; caso contrário, false. |
ilike | str [not] ilike (pattern[ESCAPE escape]) |
Retornará true se str (não) corresponder pattern com escape sem diferenciação de maiúsculas e minúsculas. |
ilike | str [not] ilike {ANY\|SOME\|ALL}([pattern[, ...]]) |
Retornará true se str (não) corresponder a algum/todos os padrões sem diferenciação de maiúsculas e minúsculas. |
Em | elem [not] in (expr1[, ...]) |
Retornará true se elem (não) for igual a nenhum exprN . |
Em | elem [not] in (query) |
Retornará true se elem (não) for igual a nenhuma linha em query . |
é distinto | expr1 is [not] distinct from expr2 |
Testa se os argumentos (não) têm valores diferentes quando NULL s são considerados valores comparáveis. |
é false | expr is [not] false |
Testa se expr (não) é false . |
é null | expr is [not] null |
Retorna true se expr (não) é NULL . |
é true | expr is [not] true |
Testa se expr (não) é true . |
like | str [not] like (pattern[ESCAPE escape]) |
Retornará true se str (não) corresponder pattern com escape . |
like | str [not] like {ANY\|SOME\|ALL}([pattern[, ...]]) |
Retornará true se str (não) corresponder a algum/todos os padrões. |
<=> | expr1 <=> expr2 |
Retorna o mesmo resultado que EQUAL(=) para operadores não nulos, mas retorna true se ambos são NULL e false se um deles é NULL . |
<= | expr1 <= expr2 |
Retorna true se expr1 for menor que ou igual a expr2 ; caso contrário, false . |
<> | expr1 <> expr2 |
Retorna true se expr1 não é igual a expr2 , caso contrário, false . |
< | expr1 < expr2 |
Retornará true se expr1 for menor que expr2 ; caso contrário, false . |
- | expr1 - expr2 |
Retorna a diferença de expr2 subtraído de expr1 . |
not | not expr |
Retorna a lógica NOT de uma expressão booliana. |
or | expr1 or expr2 |
Retorna o lógico de OR de expr1 e expr2 . |
% | dividend % divisor |
Retorna o resto após dividend / divisor . |
|| | expr1 \|\| expr2 |
Retorna a concatenação de expr1 e expr2 . |
| | expr1 \| expr2 |
Retorna a operação bit a bit OR de expr1 e expr2 . |
+ | expr1 + expr2 |
Retorna a soma dos valores expr1 e expr2 . |
regexp | str [not] regexp regex |
Retornará true se str (não) corresponder com regex . |
regexp_like | str [not] regexp_like regex |
Retornará true se str (não) corresponder com regex . |
rlike | str [not] rlike regex |
Retornará true se str (não) corresponder com regex . |
/ | dividend / divisor |
Retorna dividend dividido por divisor . |
~ | ~ expr |
Retorna a operação bit a bit NOT de expr . |
Precedência do operador
Precedência | Operador |
---|---|
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 |
Funções binárias e de cadeia de caracteres
Função | Descrição |
---|---|
expr1 || expr2 | Retorna a concatenação de expr1 e expr2 . |
aes_decrypt(expr, key[, mode[, padding[, aad]]]) | Descriptografa um binário expr usando criptografia AES. |
aes_encrypt(expr, key[, mode[, padding[, iv[, aad]]]]) | Criptografa um binário expr usando criptografia AES. |
ascii(str) | Retorna o ponto de código ASCII do primeiro caractere de str . |
base64(expr) | Converte expr em uma cadeia de caracteres de base64. |
bin(expr) | Retorna a representação binária de expr . |
binary(expr) | Converte o valor de expr em BINARY . |
bit_length(expr) | Retorna o comprimento do bit de dados de cadeia de caracteres ou o número de bits de dados binários. |
bitmap_count(expr) | Retorna o número de bits definidos em uma cadeia de caracteres BINARY que representa um bitmap. |
btrim(str [, trimStr]) | Retorna str com caracteres à esquerda e à direita removidos. |
char(expr) | Retorna o caractere no ponto de código UTF-16 fornecido. |
char_length(expr) | Retorna o tamanho, em caracteres, dos dados da cadeia de caracteres ou o número de bytes de dados binários. |
character_length(expr) | Retorna o tamanho, em caracteres, dos dados da cadeia de caracteres ou o número de bytes de dados binários. |
charindex(substr, str[, pos]) | Retorna a posição da primeira ocorrência de substr em str após a posição pos . |
chr(expr) | Retorna o caractere no ponto de código UTF-16 fornecido. |
concat(expr1, expr2[, …]) | Retorna a concatenação dos argumentos. |
concat_ws(sep[, expr1[, …]]) | Retorna as cadeias de caracteres de concatenação separadas por sep . |
contains(expr, subExpr) | Retorna true se expr STRING ou BINARY contêm subExpr . |
crc32(expr) | Retorna um valor de verificação de redundância cíclica de expr . |
decode(expr, charSet) | Move o expr binário para uma cadeia de caracteres usando a codificação do conjunto de caracteres charSet . |
encode(expr, charSet) | Retorna a representação binária de uma cadeia de caracteres com a codificação de caracteres charSet . |
endswith(expr, endExpr) | Retorna true se expr STRING ou BINARY terminam com endExpr . |
find_in_set(searchExpr, sourceExpr) | Retorna a posição de uma cadeia de caracteres dentro de uma lista separada por vírgulas de cadeias de caracteres. |
format_number(expr, scale) | Formata expr como #,###,###.## , arredondado para scale casas decimais. |
format_number(expr, fmt) | Formata expr como fmt . |
format_string(strfmt[, obj1 [, …]]) | Retorna uma cadeia de caracteres formatada de cadeias de caracteres de formato no estilo printf. |
hex(expr) | Converte expr em hexadecimal. |
str ilike (pattern[ESCAPE escape]) | Retornará true se str corresponder a pattern com escape sem diferenciar maiúsculas e minúsculas. |
initcap(expr) | Retorna expr com a primeira letra de cada palavra em maiúsculas. |
instr(str, substr) | Retorna o índice (baseado em 1) da primeira ocorrência de substr em str . |
lcase(expr) | Retorna expr com todos os caracteres alterados para minúsculas. |
left(str, len) | Retorna os caracteres len mais à esquerda de str . |
len(expr) | Retorna o tamanho, em caracteres, dos dados da cadeia de caracteres ou o número de bytes de dados binários. |
length(expr) | Retorna o tamanho, em caracteres, dos dados da cadeia de caracteres ou o número de bytes de dados binários. |
levenshtein(str1, str2) | Retorna a distância Levenshtein entre as cadeias de caracteres str1 e str2 . |
str like (pattern[ESCAPE escape]) | Retorna true se str corresponde a pattern com escape . |
locate(substr, str[, pos]) | Retorna a posição da primeira ocorrência de substr em str após a posição pos . |
lower(expr) | Retorna expr com todos os caracteres alterados para minúsculas. |
lpad(expr, len[, pad]) | Retorna expr , preenchido à esquerda com pad até o comprimento de len . |
ltrim([trimstr,] str) | Retorna str com os caracteres à esquerda em trimStr removidos. |
mask(str[, upperChar[, lowerChar[, digitChar[, otherChar]]]]) | Retorna uma versão mascarada da entrada str . |
md5(expr) | Retorna uma soma de verificação de 128 bits MD5 de expr como uma cadeia de caracteres hexadecimal. |
octet_length(expr) | Retorna o tamanho do byte de dados de cadeia de caracteres ou o número de bytes de dados binários. |
overlay(input PLACING replace FROM pos [FOR len]) | Substitui input por replace que começa em pos e tem o comprimento len . |
parse_url(url, partToExtract[, key]) | Extrai uma parte de url . |
position(substr, str[, pos]) | Retorna a posição da primeira ocorrência de substr em str após a posição pos . |
position(subtr IN str) | Retorna a posição da primeira ocorrência de substr em str após a posição pos . |
printf(strfmt[, obj1 [, …]]) | Retorna uma cadeia de caracteres formatada de cadeias de caracteres de formato no estilo printf. |
str regexp regex | Retorna true se str corresponde a regex . |
str regexp_like regex | Retorna true se str corresponde a regex . |
regexp_count(str, regexp) | Retorna o número de vezes que str corresponde ao padrão regexp . |
regexp_extract(str, regexp[, idx]) | Extrai a primeira cadeia de caracteres em str que corresponde à expressão regexp e ao índice de grupo regex . |
regexp_extract_all(str, regexp[, idx]) | Extrai todas as cadeias de caracteres de str que correspondem à expressão regexp e que correspondem ao índice de grupo regex . |
regexp_instr(str, regexp) | Retorna à posição da primeira substring em str combinação regexp . |
regexp_replace(str, regexp, rep[, position]) | Substitui todas as substrings de str correspondentes a regexp por rep . |
regexp_substr(str, regexp) | Retorna a primeira substring em str que combine regexp . |
repeat(expr, n) | Retorna a cadeia de caracteres que se repete expr n vezes. |
replace(str, search [, replace]) | Substitui todas as ocorrências de search por replace . |
reverse(expr) | Retorna uma cadeia de caracteres invertida ou uma matriz com ordem inversa de elementos. |
right(str, len) | Retorna os caracteres len mais à direita da cadeia de caracteres str . |
str rlike regex | Retorna true se str corresponde a regex . |
rpad(expr, len[, pad]) | Retorna expr , preenchido à direita com pad até o comprimento de len . |
rtrim([trimStr,] str) | Retorna str com caracteres à direita removidos. |
sentences(str[, lang, country]) | Divide str em uma matriz de matriz de palavras. |
sha(expr) | Devolve um valor hash SHA1 como uma cadeia hexadecimal de expr . |
sha1(expr) | Devolve um valor hash SHA1 como uma cadeia hexadecimal de expr . |
sha2(expr, bitLength) | Retorna uma soma de verificação da família SHA-2 como uma cadeia de caracteres hexadecimal de expr . |
soundex(expr) | Retorna o código soundex da cadeia de caracteres. |
space(n) | Retorna uma cadeia de caracteres que consiste em n espaços. |
split(str, regex[, limit]) | Divide str em ocorrências que correspondam à regex e retorna uma matriz com um comprimento de no máximo limit . |
split_part(str, delim, partNum) | Divide str em ocorrências de delim e retorna a parte partNum . |
startswith(expr, startExpr) | Retorna true se expr STRING ou BINARY começam com startExpr . |
string(expr) | Converte o valor expr em STRING . |
substr(expr, pos[, len]) | Retorna a substring de expr que começa em pos e tem o comprimento len . |
substr(expr FROM pos[ FOR len]) | Retorna a substring de expr que começa em pos e tem o comprimento len . |
substring(expr, pos[, len]) | Retorna a substring de expr que começa em pos e tem o comprimento len . |
substring(expr FROM pos[ FOR len]) | Retorna a substring de expr que começa em pos e tem o comprimento len . |
substring_index(expr, delim, count) | Retorna a substring expr antes de count ocorrências do delimitador delim . |
to_binary(expr[, fmt]) | Retorna expr convertido para um binário com base em fmt . |
to_char(numExpr, fmt) | Retorna numExpr convertido para STRING usando a formatação fmt .” |
to_varchar(numExpr, fmt) | Retorna numExpr convertido para STRING usando a formatação fmt .” |
translate(expr, from, to) | Retorna uma expr na qual todos os caracteres em from foram substituídos por aqueles em to . |
trim([[BOTH | LEADING | TRAILING] [trimStr] FROM] str) | Corta caracteres de uma cadeia de caracteres. |
try_aes_decrypt(expr, key[, mode[, padding[, aad]]]) | Descriptografa um binário expr usando a criptografia AES e retorna NULL em caso de erro. |
try_to_binary(expr [, fmt]) | Retorna expr convertido em BINARY com base em fmt , ou NULL se a entrada é inválida. |
try_url_decode(str) | Converte uma cadeia de caracteres do formatoapplication/x-www-form-urlencoded e retorna NULL em caso de erro. |
try_zstd_decompress(value) | Retorna o valor descompactado com a compactação Zstandard ou NULL quando a entrada é inválida. |
ucase(expr) | Retorna expr com todos os caracteres alterados para maiúsculas. |
unbase64(expr) | Retorna uma cadeia de caracteres de base64 decodificada como binário. |
unhex(expr) | Converte hexadecimal expr em BINARY . |
upper(expr) | Retorna expr com todos os caracteres alterados para maiúsculas. |
url_decode(str) | Traduz uma cadeia de caracteres de volta do formato application/x-www-form-urlencoded. |
url_encode(str) | Traduz uma cadeia de caracteres para o formato application/x-www-form-urlencoded. |
zstd_compress (value[,level[,streaming_mode]]) | Retorna o valor compactado com a compactação Zstandard. |
zstd_decompress(value) | Retorna o valor descompactado com a compactação Zstandard. |
Funções escalares numéricas
Função | Descrição |
---|---|
~ expr | Retorna a operação bit a bit NOT de expr . |
dividend / divisor | Retorna dividend dividido por divisor . |
expr1 | expr2 | Retorna a operação bit a bit OR de expr1 e expr2 . |
- expr | Retorna o valor negado de expr . |
expr1 - expr2 | Retorna a diferença de expr2 subtraído de expr1 . |
+ expr | Retorna o valor de expr . |
expr1 + expr2 | Retorna a soma dos valores expr1 e expr2 . |
dividend % divisor | Retorna o resto após dividend / divisor . |
expr1 ^ expr2 | Retorna o OR (XOR) exclusivo bit a bit de expr1 e expr2 . |
expr1 e expr2 | Retorna a operação bit a bit AND de expr1 e expr2 . |
multiplier * multiplicand | Retorna multiplier multiplicado por multiplicand . |
abs(expr) | Retorna o valor absoluto do valor numérico em expr . |
acos(expr) | Retorna a inversa do cosseno (secante) de expr . |
acosh(expr) | Retorna o cosseno hiperbólico inverso de expr . |
asin(expr) | Retorna o seno inverso (cossecante) de expr . |
asinh(expr) | Retorna o seno hiperbólico inverso de expr . |
atan(expr) | Retorna a tangente inversa (arco tangente) de expr . |
atan2(exprY, exprX) | Retorna o ângulo em radianos entre o eixo x positivo de um plano e o ponto especificado pelas coordenadas (exprX , exprY ). |
atanh(expr) | Retorna a tangente hiperbólica inversa de expr . |
bigint(expr) | Converte o valor expr em BIGINT . |
bit_count(expr) | Retorna o número de bits definido no argumento. |
bit_get(expr, pos) | Retorna o valor de um bit em uma representação binária de um numérico integral. |
bit_reverse(expr) | Retorna o valor obtido pela reversão da ordem dos bits no argumento. |
bitmap_bit_position(expr) | Retorna a posição de bit baseada em 0 de um determinado número BIGINT em um bucket. |
bitmap_bucket_number(expr) | Retorna o número do bucket de bitmap para um determinado número BIGINT . |
bround(expr[,targetScale]) | Retorna o expr arredondado pelo modo HALF_EVEN . |
cbrt(expr) | Retorna a raiz cúbica de expr . |
ceil(expr[,targetScale]) | Retorna o menor número não menor do que expr arredondado para cima para targetScale dígitos em relação ao ponto decimal. |
ceiling(expr[,targetScale]) | Retorna o menor número não menor do que expr arredondado para cima para targetScale dígitos em relação ao ponto decimal. |
conv(num, fromBase, toBase) | Converte num de fromBase em toBase . |
convert_timezone([sourceTz, ]targetTz, sourceTs) | Converte o sourceTz targetTz do fuso horário TIMESTAMP_NTZ para o sourceTs . |
cos(expr) | Retorna o cosseno de expr . |
cosh(expr) | Retorna o cosseno hiperbólico de expr . |
cot(expr) | Retorna o cotangente de expr . |
csc(expr) | Retorna a cossecante de expr . |
decimal(expr) | Converte o valor expr em DECIMAL . |
degrees(expr) | Converter radianos em graus. |
divisor div dividend | Retorna a parte integral da divisão de divisor por dividend . |
double(expr) | Converte o valor expr em DOUBLE . |
e() | Retorna a constante e . |
exp(expr) | Retorna e elevado à expr ª potência. |
expm1(expr) | Retorna exp(expr) - 1 . |
factorial(expr) | Retorna o fatorial de expr . |
float(expr) | Converte o valor expr em FLOAT . |
floor(expr[,targetScale]) | Retorna o maior número não menor do que expr arredondado para baixo para targetScale dígitos em relação ao ponto decimal. |
getbit(expr, pos) | Retorna o valor de um bit em uma representação binária de um numérico integral. |
hypot(expr1, expr2) | Retorna sqrt(expr1 * expr1 + expr2 * expr2) . |
int(expr) | Converte o valor expr em INTEGER . |
isnan(expr) | Retorna true se expr é NaN . |
ln(expr) | Retorna o logaritmo natural (base e ) de expr . |
log([base,] expr) | Retorna o logaritmo de expr com base . |
log1p(expr) | Retorna log(1 + expr) . |
log2(expr) | Retorna o logaritmo de expr com base 2 . |
log10(expr) | Retorna o logaritmo de expr com base 10 . |
mod(dividend, divisor) | Retorna o resto após dividend / divisor . |
nanvl(expr1, expr2) | Retorna expr1 se não for NaN ; caso contrário, expr2 . |
negative(expr) | Retorna o valor negado de expr . |
'nullifzero(expr)' | Retorna expr se não for zero ou NULL de outra forma. |
pi() | Retorna pi. |
pmod(dividend, divisor) | Retorna o restante positivo após dividend / divisor . |
positive(expr) | Retorna o valor de expr . |
pow(expr1, expr2) | Eleva expr1 à expr2 ª potência. |
power(expr1, expr2) | Eleva expr1 à expr2 ª potência. |
radians(expr) | Converte expr em graus para radianos. |
rand([seed]) | Retorna um valor aleatório entre 0 e 1. |
randn([seed]) | Retorna um valor aleatório de uma distribuição normal padrão. |
random([seed]) | Retorna um valor aleatório entre 0 e 1. |
rint(expr) | Retorna expr arredondado para um número inteiro como DOUBLE . |
round(expr[,targetScale]) | Retorna o expr arredondado pelo modo HALF_UP . |
sec(expr) | Retorna a secante de expr . |
shiftleft(expr, n) | Retorna uma operação bit a bit para à esquerda deslocada por n bits. |
shiftright(expr, n) | Retorna um número integral com assinatura de operação bit a bit deslocada para a direita por n bits. |
shiftrightunsigned(expr, n) | Retorna um número integral sem assinatura de operação bit a bit deslocada para a direita por n bits. |
sign(expr) | Retorna -1,0, 0,0 ou 1,0, conforme expr é negativo, 0 ou positivo. |
signum(expr) | Retorna -1,0, 0,0 ou 1,0, conforme expr é negativo, 0 ou positivo. |
sin(expr) | Retorna o seno de expr . |
sinh(expr) | Retorna o seno hiperbólico de expr . |
smallint(expr) | Converte o valor expr em SMALLINT . |
sqrt(expr) | Retorna a raiz quadrada de expr . |
tan(expr) | Retorna a tangente de expr . |
tanh(expr) | Retorna a tangente hiperbólica de expr . |
tinyint(expr) | Converte expr em TINYINT . |
to_number(expr, fmt) | Retorna expr convertido para DECIMAL usando a formatação fmt . |
try_add(expr1, expr2) | Retorna a soma de expr1 e expr2 , ou NULL em caso de erro. |
try_divide(dividend, divisor) | Retorna dividend dividido por divisor , ou NULL se divisor for 0. |
try_mod(dividendo, divisor) | Retorna o restante após dividend / divisor , ou NULL se divisor for 0.. |
try_multiply(multiplier, multiplicand) | Retorna multiplier multiplicado por multiplicand ou NULL no estouro. |
try_subtract(expr1, expr2) | Retorna a subtração de expr2 de expr1 , ou NULL no estouro. |
try_to_number(expr, fmt ) | Retorna expr convertido em DECIMAL usando a formatação fmt , ou NULL se expr não corresponder ao formato. |
width_bucket(expr, minExpr, maxExpr, numBuckets) | Retorna o número do bucket de um valor em um histograma de largura de equivalência. |
'zeroifnull(expr)' | Retorna expr se não NULL for , ou 0 não. |
Funções de agregação
Função | Descrição |
---|---|
any(expr) | Retornará true se pelo menos um valor de expr no grupo for true. |
any_value(expr[,ignoreNull]) | Retorna algum valor de expr para um grupo de linhas. |
approx_count_distinct(expr[,relativeSD]) | Retorna o número estimado de valores distintos em expr no grupo. |
approx_percentile(expr,percentage[,accuracy]) | Retorna o percentil aproximado de expr dentro do grupo. |
approx_top_k(expr[,k[,maxItemsTracked]]) | Retorna os principais k de valores de item que ocorrem com mais frequência em um expr junto com suas contagens aproximadas. |
array_agg(expr) | Retorna uma matriz que consiste em todos os valores em expr dentro do grupo. |
avg(expr) | Retorna a média calculada dos valores de um grupo. |
bit_and(expr) | Retorna a operação bit a bit AND de todos os valores de entrada no grupo. |
bit_or(expr) | Retorna a operação bit a bit OR de todos os valores de entrada no grupo. |
bit_xor(expr) | Retorna a operação bit a bit XOR de todos os valores de entrada no grupo. |
bitmap_construct_agg(expr) | Retorna o bit a bit de OR de todos os valores de posição de bit no grupo. entre 0 e 32767 em um grupo como um BINARY . |
bitmap_or_agg(expr) | Retorna o bit a bit OR de todos os BINARY valores de entrada no grupo. |
bool_and(expr) | Retornará true se todos os valores em expr forem true dentro do grupo. |
bool_or(expr) | Retorna true se, no mínimo, um valor em expr é true no grupo. |
collect_list(expr) | Retorna uma matriz que consiste em todos os valores em expr dentro do grupo. |
collect_set(expr) | Retorna uma matriz que consiste em todos os valores únicos na expr dentro do grupo. |
corr(expr1,expr2) | Retorna o coeficiente Pearson de correlação entre um grupo de pares de números. |
count(*) | Retorna o número total de linhas recuperadas em um grupo, incluindo as linhas que contêm nulo. |
count(expr[, …]) | Retorna o número de linhas em um grupo para o qual as expressões fornecidas são todas não nulas. |
count_if(expr) | Retorna o número de valores verdadeiros para o grupo em expr . |
count_min_sketch(column,epsilon,confidence,seed) | Retorna um esboço de contagem mínima de todos os valores do grupo em column com epsilon , confidence e seed . |
covar_pop(expr1,expr2) | Retorna a covariância da população de pares de números em um grupo. |
covar_samp(expr1,expr2) | Retorna a covariância de amostra de pares de números em um grupo. |
every(expr) | Retornará true se todos os valores de expr no grupo forem verdadeiros. |
first(expr[,ignoreNull]) | Retorna o primeiro valor de expr em um grupo de linhas. |
first_value(expr[,ignoreNull]) | Retorna o primeiro valor de expr em um grupo de linhas. |
histogram_numeric(expr,numBins) | Calcula um histograma em expr com compartimentos numBins , retornando uma matriz de pares que representam os centros dos compartimentos. |
hll_sketch_agg(expr[,lgConfigK]) | Retorna um esboço do HyperLogLog usado para aproximar uma contagem de valores distinta. |
hll_union_agg(expr[,allowDifferentLgConfigK]) | Agrega os esboços do HyperLogLog para um grupo de linhas. |
kurtosis(expr) | Retorna o valor de curtose calculado dos valores de um grupo. |
last(expr[,ignoreNull]) | Retorna o último valor de expr do grupo de linhas. |
last_value(expr[,ignoreNull]) | Retorna o último valor de expr do grupo de linhas. |
max(expr) | Retorna o valor máximo de expr em um grupo. |
max_by(expr1,expr2) | Retorna o valor de uma expr1 associado ao valor máximo de expr2 em um grupo. |
mean(expr) | Retorna a média calculada dos valores de um grupo. |
median(expr) | Retorna o valor mediano calculado dos valores de um grupo. |
min(expr) | Retorna o valor mínimo de expr em um grupo. |
min_by(expr1, expr2) | Retorna o valor de um expr1 associado ao valor mínimo de expr2 em um grupo. |
mode(expr [,deterministic]) | Retorna o valor de expr mais frequente, não NULL , em um grupo. |
percentile(expr, percentage [,frequency]) | Retorna o valor exato do percentil de expr na percentage especificada. |
percentile_approx(expr,percentage[,accuracy]) | Retorna o percentil aproximado de expr dentro do grupo. |
percentile_cont(pct) WITHIN GROUP (ORDER BY key) | Retorna o percentil interpolado de key no grupo. |
percentile_disc(pct) WITHIN GROUP (ORDER BY key) | Retorna o percentil discreto de key dentro do grupo. |
regr_avgx(yExpr, xExpr) | Retorna a média de xExpr calculada a partir de valores de um agrupamento em que xExpr e yExpr são NOT NULL . |
regr_avgy(yExpr, xExpr) | Retorna a média de yExpr calculada a partir de valores de um agrupamento em que xExpr e yExpr são NOT NULL . |
regr_count(yExpr, xExpr) | Retorna o número de pares de valores não nulos yExpr , xExpr no grupo. |
regr_intercept(yExpr, xExpr) | Retorna a intercepção da linha de regressão linear univariada em um grupo em que xExpr e yExpr não são NULL. |
regr_r2(yExpr, xExpr) | Retorna o coeficiente de determinação de valores de um grupo em que xExpr e yExpr NÃO são NULL. |
regr_slope(yExpr, xExpr) | Retorna a inclinação da linha de regressão linear de pares de valor não nulo yExpr , xExpr no grupo. |
regr_sxx(yExpr, xExpr) | Retorna a soma dos quadrados dos valores xExpr de um grupo em que xExpr e yExpr NÃO são NULL. |
regr_sxy(yExpr, xExpr) | Retorna a soma de produtos de yExpr e xExpr calculados a partir de valores de um grupo em que xExpr e yExpr são NOT NULL . |
regr_syy(yExpr, xExpr) | Retorna a soma dos quadrados dos valores yExpr de um grupo em que xExpr e yExpr NÃO são NULL. |
schema_of_json_agg(json[, options]) | Retorna o esquema combinado de cadeias de caracteres JSON em um grupo no formato DDL. |
schema_of_variant_agg(variantExpr) | Retorna o esquema combinado de todos os valores VARIANT em um grupo no formato DDL. |
skewness(expr) | Retorna o valor de assimetria calculado dos valores de um grupo. |
some(expr) | Retorna true se pelo menos um valor de expr em um grupo for true . |
std(expr) | Retorna o desvio padrão de exemplo calculado dos valores dentro do grupo. |
stddev(expr) | Retorna o desvio padrão de exemplo calculado dos valores dentro do grupo. |
stddev_pop(expr) | Retorna o desvio padrão da população calculado dos valores de um grupo. |
stddev_samp(expr) | Retorna o desvio padrão da amostra calculado dos valores de um grupo. |
sum(expr) | Retorna a soma calculada dos valores de um grupo. |
try_avg(expr) | Retorna a média calculada a partir de valores de um grupo, NULL se houver um excedente. |
try_sum(expr) | Retorna a soma calculada a partir de valores de um grupo, NULL se houver um excedente. |
var_pop(expr) | Retorna a variância da população calculada com os valores de um grupo. |
var_samp(expr) | Retorna a variância da amostra calculada dos valores de um grupo. |
variance(expr) | Retorna a variância da amostra calculada dos valores de um grupo. |
Classificação de funções de janela
Função | Descrição |
---|---|
dense_rank() | Retorna a classificação de um valor em comparação com todos os valores na partição. |
ntile(n) | Divide as linhas de cada partição de janela em n buckets que variam de 1 a no máximo n . |
percent_rank() | Computa a classificação percentual de um valor dentro da partição. |
rank() | Retorna a classificação de um valor em comparação com todos os valores na partição. |
row_number() | Atribui um número sequencial exclusivo a cada linha, começando com uma, de acordo com a ordenação de linhas dentro da partição da janela. |
Funções de janela analíticas
Função | Descrição |
---|---|
cume_dist() | Retorna a posição de um valor relativo a todos os valores na partição. |
lag(expr[,offset[,default]]) | Retorna o valor de expr de uma linha anterior dentro da partição. |
lead(expr[,offset[,default]]) | Retorna o valor de expr de uma linha subsequente na partição. |
nth_value(expr, offset[, ignoreNulls]) | Retorna o valor de expr em um offset específico na janela. |
Funções de matriz
Função | Descrição |
---|---|
arrayExpr[indexExpr] | Retorna o elemento na posição indexExpr de ARRAY arrayExpr . |
aggregate(expr,start,merge[,finish]) | Agrega elementos em uma matriz usando um agregador personalizado. |
array([expr [, …]]) | Retorna uma matriz com os elementos em expr . |
array_append(array, elem) | Retorna array acrescentado por elem . |
array_compact(array) | Remove valores NULL de array . |
array_contains(array,value) | Retorna verdadeiro se array contiver value . |
array_distinct(array) | Remove valores duplicados de array . |
array_except(array1,array2) | Retorna uma matriz dos elementos em array1 , mas não em array2 . |
array_insert(array, index, elem) | Retorna um array expandido em que elem é inserido na posição index . |
array_intersect(array1,array2) | Retorna uma matriz dos elementos na interseção de array1 e array2 . |
array_join(array,delimiter[,nullReplacement]) | Concatena os elementos de array . |
array_max(array) | Retorna o valor máximo em array . |
array_min(array) | Retorna o valor mínimo em array . |
array_position(array,element) | Retorna a posição da primeira ocorrência de element em array . |
array_prepend(array, elem) | Retorna array precedido por elem . |
array_remove(array,element) | Remove todas as ocorrências de element de array . |
array_repeat(element,count) | Retorna uma matriz contendo element count vezes. |
array_size(array) | Retorna o número de elementos em array . |
array_sort(array,func) | Retorna array classificado de acordo com func . |
array_union(array1,array2) | Retorna uma matriz dos elementos na união de array1 e array2 sem duplicatas. |
arrays_overlap(array1, array2) | Retornará true se a interseção de array1 e array2 não estiver vazia. |
arrays_zip(array1 [, …]) | Retorna uma matriz mesclada de structs na qual o enésimo struct contém todos os valores enésimos das matrizes de entrada. |
cardinality(expr) | Retorna o tamanho de expr . |
concat(expr1, expr2 [, …]) | Retorna a concatenação dos argumentos. |
element_at(arrayExpr, index) | Retorna o elemento de uma arrayExpr em index . |
exists(expr, pred) | Retorna true se pred é true para todo elemento em expr . |
explode(collection) | Retorna linhas pelo desaninhamento de collection . |
explode_outer(collection) | Retorna linhas com o desaninhamento de collection usando semântica externa. |
filter(expr,func) | Filtra a matriz em expr usando a função func . |
flatten(arrayOfArrays) | Transforma uma matriz de matrizes em uma única matriz. |
forall(expr, predFunc) | Testa se predFunc serve para todos os elementos na matriz. |
get(arrayExpr, index) | Retorna o elemento de um arrayExpr em index , começando em 0 . |
inline(expr) | Explode uma matriz de estruturas em uma tabela. |
inline_outer(expr) | Detalha uma matriz de structs em uma tabela com semântica externa. |
posexplode(expr) | Retorna linhas com o desaninhamento da matriz com a numeração de posições. |
posexplode_outer(expr) | Retorna linhas com o desaninhamento da matriz com a numeração de posições usando a semântica OUTER . |
reduce(expr,start,merge[,finish]) | Agrega elementos em uma matriz usando um agregador personalizado. |
reverse(array) | Retorna uma cadeia de caracteres invertida ou uma matriz com ordem inversa de elementos. |
sequence(start,stop,step) | Gera uma matriz de elementos de start a stop (inclusive), com incrementos de step . |
shuffle(array) | Retorna uma permuta aleatória da matriz na expr . |
size(expr) | Retorna a cardinalidade de expr . |
slice(expr,start,length) | Retorna um subconjunto de uma matriz. |
sort_array(expr[,ascendingOrder]) | Retorna a matriz em expr na ordem classificada. |
transform(expr, func) | Transforma elementos em uma matriz em expr usando a função func . |
try_element_at(arrayExpr, index) | Retorna o elemento de um arrayExpr em index , ou NULL quando index está fora do limite. |
zip_with(expr1, expr2, func) | Mescla as matrizes em expr1 e expr2 , em termos de elementos, em uma única matriz usando func . |
Funções de mapeamento
Função | Descrição |
---|---|
mapExpr[keyExpr] | Retorna o valor em keyExpr de MAP mapExpr . |
cardinality(expr) | Retorna o tamanho de expr . |
element_at(mapExpr, key) | Retorna o valor de mapExpr para key . |
explode(expr) | Retorna linhas pelo desaninhamento de expr . |
explode_outer(expr) | Retorna linhas com o desaninhamento de expr usando semântica externa. |
map([{key1, value1}[, …]]) | Cria um mapa com os pares chave-valor especificados. |
map_concat([expr1 [, …]]) | Retorna a união de todas as expressões de mapa expr . |
map_contains_key(map, key) | Retorna true se map contém key , caso contrário false . |
map_entries(map) | Retorna uma matriz não ordenada de todas as entradas em map . |
map_filter(expr, func) | Filtra entradas no mapa em expr usando a função func . |
map_from_arrays(keys, values) | Cria um mapa com um par das matrizes keys e values . |
map_from_entries(expr) | Cria um mapa com base na matriz de entradas especificada. |
map_keys(map) | Retorna uma matriz não ordenada que contém as chaves de map . |
map_values(map) | Retorna uma matriz não ordenada que contém os valores de map . |
map_zip_with(map1, map2, func) | Mescla map1 e map2 em um único mapa. |
size(expr) | Retorna a cardinalidade de expr . |
str_to_map(expr[,pairDelim[,keyValueDelim]]) | Retorna um mapa depois de dividir expr em pares chave-valor usando delimitadores. |
transform_keys(expr, func) | Transforma chaves em um mapa em expr usando a função func . |
transform_values(expr, func) | Transforma valores em um mapa na expr usando a função func . |
try_element_at(mapExpr, key) | Retorna o valor de mapExpr para key , ou NULL quando key não existe. |
Funções date, timestamp e interval
Para saber mais sobre formatos de data e carimbo de data/hora, confira Padrões de datetime.
Função | Descrição |
---|---|
intervalExpr / divisor | Retorna o intervalo dividido por divisor . |
- intervalExpr | Retorna o valor negado de intervalExpr . |
intervalExpr1 - intervalExpr2 | Retorna a diferença de intervalExpr2 subtraído de intervalExpr1 . |
datetimeExpr1 - datetimeExpr2 | Retorna a diferença de datetimeExpr2 subtraído de datetimeExpr1 . |
+ intervalExpr | Retorna o valor de intervalExpr . |
intervalExpr1 + intervalExpr2 | Retorna a soma dos valores intervalExpr1 e intervalExpr2 . |
intervalExpr * multiplicand | Retorna intervalExpr multiplicado por multiplicand . |
abs(expr) | Retorna o valor absoluto do valor de intervalo em expr . |
add_months(startDate,numMonths) | Retorna a data que é numMonths após startDate . |
curdate() | Retorna a data atual no início da avaliação da consulta. |
current_date() | Retorna a data atual no início da avaliação da consulta. |
current_timestamp() | Retorna o carimbo de data/hora atual no início da avaliação da consulta. |
current_timezone() | Retorna o fuso horário local da sessão atual. |
date(expr) | Converte o valor expr para DATE. |
date_add(startDate,numDays) | Retorna o numDays da data após startDate . |
date_add(unit, value, expr) | Adiciona value unit s a um carimbo de data/hora expr . |
date_diff(unit, start, stop) | Retorna a diferença entre dois carimbos de data/hora medidos em unit s. |
date_format(expr,fmt) | Converte um carimbo de data/hora em uma cadeia de caracteres no formato fmt . |
date_from_unix_date(days) | Cria uma data com base no número de dias desde 1970-01-01 . |
date_part(field,expr) | Extrai uma parte da data, do carimbo de data/hora ou do intervalo. |
date_sub(startDate,numDays) | Retorna o numDays da data antes de startDate . |
date_trunc(unit,expr) | Retorna o carimbo de data/hora truncado para a unidade especificada em unit . |
dateadd(startDate,numDays) | Retorna o numDays da data após startDate . |
dateadd(unit, value, expr) | Adiciona value unit s a um carimbo de data/hora expr . |
datediff(endDate,startDate) | Retorna o número de dias de startDate a endDate . |
datediff(unit, start, stop) | Retorna a diferença entre dois carimbos de data/hora medidos em unit s. |
day(expr) | Retorna o dia do mês da data ou do carimbo de data/hora. |
dayofmonth(expr) | Retorna o dia do mês da data ou do carimbo de data/hora. |
dayofweek(expr) | Retorna o dia da semana da data ou do carimbo de data/hora. |
dayofyear(expr) | Retorna o dia do ano da data ou do carimbo de data/hora. |
divisor div dividend | Retorna a parte integral da divisão do intervalo divisor pelo intervalo dividend . |
extract(field FROM source) | Retorna field de source . |
from_unixtime(unixTime,fmt) | Retorna unixTime em fmt . |
from_utc_timestamp(expr,timezone) | Retorna um carimbo de data/hora em expr especificado em UTC no fuso horário timeZone . |
getdate() | Retorna o carimbo de data/hora atual no início da avaliação da consulta. |
hour(expr) | Retorna o componente de hora de um carimbo de data/hora. |
last_day(expr) | Retorna o último dia do mês ao qual a data pertence. |
make_date(year,month,day) | Cria uma data com os campos year , month e day . |
make_dt_interval([days[, hours[, mins[, secs]]]]) | Cria um intervalo de tempo de dia com days , hours , mins e secs . |
make_interval(years, months, weeks, days, hours, mins, secs) | Preterido: cria um intervalo de years , months , weeks , days , hours , mins e secs . |
make_timestamp(year,month,day,hour,min,sec[,timezone]) | Cria um carimbo de data/hora com os campos year , month , day , hour , min , sec e timezone . |
make_ym_interval([years[, months]]) | Cria um intervalo de ano e mês com years e months . |
minute(expr) | Retorna o componente de minuto do carimbo de data/hora em expr . |
month(expr) | Retorna o componente de mês do carimbo de data/hora na expr . |
months_between(expr1,expr2[,roundOff]) | Retorna o número de meses decorridos entre datas ou carimbos de data/hora na expr2 e na expr1 . |
next_day(expr,dayOfWeek) | Retorna a primeira data que é posterior a expr e nomeada como em dayOfWeek . |
now() | Retorna o carimbo de data/hora atual no início da avaliação da consulta. |
quarter(expr) | Retorna o trimestre do ano para expr no intervalo de 1 a 4. |
second(expr) | Retorna o componente second do carimbo de data/hora na expr . |
session_window(expr, gpDuration) | Cria uma janela de sessão sobre uma expressão de carimbo de data/hora. |
sign(expr) | Retorna -1.0, 0.0 ou 1.0, conforme o intervalo expr seja negativo, 0 ou positivo. |
signum(expr) | Retorna -1.0, 0.0 ou 1.0, conforme o intervalo expr seja negativo, 0 ou positivo. |
timediff(unit, start, stop) | Retorna a diferença entre dois carimbos de data/hora medidos em unit s. |
timestamp(expr) | Converte expr em TIMESTAMP . |
timestamp_micros(expr) | Cria uma expr de carimbo de data/hora em microssegundos desde a época UTC. |
timestamp_millis(expr) | Cria uma expr carimbo de data/hora em milissegundos desde a época UTC. |
timestamp_seconds(expr) | Cria uma expr de carimbo de data/hora em segundos desde a época UTC. |
timestampadd(unit, value, expr) | Adiciona value unit s a um carimbo de data/hora expr . |
timestampdiff(unit, start, stop) | Retorna a diferença entre dois carimbos de data/hora medidos em unit s. |
to_date(expr[,fmt]) | Retorna a conversão de expr para uma data usando uma formatação opcional. |
to_timestamp(expr[,fmt]) | Retorna a conversão de expr para um carimbo de data/hora usando uma formatação opcional. |
to_unix_timestamp(expr[,fmt]) | Retorna o carimbo de data/hora em expr como um carimbo UNIX. |
to_utc_timestamp(expr,timezone) | Retorna o carimbo de data/hora em expr em um fuso horário diferente de UTC. |
trunc(expr, fmt) | Retorna uma data com uma parte da data truncada para a unidade especificada pelo modelo de formato fmt . |
try_add(expr1, expr2) | Retorna a soma de expr1 e expr2 ou NULL, em caso de erro. |
try_divide(dividend, divisor) | Retorna dividend dividido por divisor , ou NULL se divisor for 0. |
try_multiply(multiplier, multiplicand) | Retorna multiplier multiplicado por multiplicand ou NULL no estouro. |
try_subtract(expr1, expr2) | Retorna a subtração de expr2 de expr1 , ou NULL no estouro. |
try_to_timestamp(expr[,fmt]) | Retorna a expr conversão para um carimbo de hora usando uma formatação opcional ou NULL caso a conversão falhe. |
unix_date(expr) | Retorna o número de dias desde 1970-01-01 . |
unix_micros(expr) | Retorna o número de microssegundos desde 1970-01-01 00:00:00 UTC . |
unix_millis(expr) | Retorna o número de milissegundos desde 1970-01-01 00:00:00 UTC . |
unix_seconds(expr) | Retorna o número de segundos desde 1970-01-01 00:00:00 UTC . |
unix_timestamp([expr[, fmt]]) | Retorna o carimbo de data/hora UNIX da hora atual ou especificada. |
weekday(expr) | Retorna o dia da semana de expr . |
weekofyear(expr) | Retorna a semana do ano de expr . |
year(expr) | Retorna o componente de ano de expr . |
window(expr, width[, step[, start]]) | Cria uma janela deslizante com base no salto sobre uma expressão de carimbo de data/hora. |
window_time(window) | Retorna a hora de término inclusiva de uma janela deslizante produzida pelas funções window ou session_window. |
Funções H3 geoespaciais
Para obter informações sobre funções geoespaciais H3, consulte Funções geoespaciais H3.
Funções e construtores de conversão
Para obter mais informações sobre a conversão entre tipos, consulte função Cast e função try_cast.
Função | Descrição |
---|---|
array([expr [, …]]) | Retorna uma matriz com os elementos em expr . |
bigint(expr) | Converte o valor expr em BIGINT . |
binary(expr) | Converte o valor de expr em BINARY . |
boolean(expr) | Converte expr em BOOLEAN . |
cast(expr AS type) | Converte o valor expr no tipo de dados de destino type . |
expr :: type | Converte o valor expr no tipo de dados de destino type . |
date(expr) | Converte o valor expr em DATE . |
decimal(expr) | Converte o valor expr em DECIMAL . |
double(expr) | Converte o valor expr em DOUBLE . |
float(expr) | Converte o valor expr em FLOAT . |
int(expr) | Converte o valor expr em INTEGER . |
make_date(year,month,day) | Cria uma data com os campos year , month e day . |
make_dt_interval([days[, hours[, mins[, secs]]]]) | Cria um intervalo de tempo de dia com days , hours , mins e secs . |
make_interval(years, months, weeks, days, hours, mins, secs) | Cria um intervalo de years , months , weeks , days , hours mins e secs . |
make_timestamp(year,month,day,hour,min,sec[,timezone]) | Cria um carimbo de data/hora com os campos year , month , day , hour , min , sec e timezone . |
make_ym_interval([years[, months]]) | Cria um intervalo de ano e mês com years e months . |
map([{key1, value1} [, …]]) | Cria um mapa com os pares chave-valor especificados. |
named_struct({name1, val1} [, …]) | Cria um struct com os nomes e valores de campo especificados. |
smallint(expr) | Converte o valor expr em SMALLINT . |
string(expr) | Converte o valor expr em STRING . |
struct(expr1 [, …]) | Cria um STRUCT com os valores de campo especificados. |
tinyint(expr) | Converte expr em TINYINT . |
timestamp(expr) | Converte expr em TIMESTAMP . |
to_char(expr, fmt) | Retorna expr convertido para STRING usando a formatação fmt .” |
to_date(expr[,fmt]) | Retorna a conversão de expr para uma data usando uma formatação opcional. |
to_number(expr, fmt) | Retorna expr convertido para DECIMA L usando formatação fmt . |
to_timestamp(expr[,fmt]) | Retorna a conversão de expr para um carimbo de data/hora usando uma formatação opcional. |
to_varchar(expr, fmt) | Retorna expr convertido para STRING usando a formatação fmt .” |
try_cast(expr AS type) | Converte o valor expr no tipo de dados de destino type com segurança. |
try_to_number(expr, fmt) | Retorna expr convertido para DECIMAL usando a formatação fmt , ou NULL se expr não for válido. |
Funções CSV e Avro
Função | Descrição |
---|---|
from_avro(avroBin, jsonSchema[, opções]) | Retorna um valor de struct baseado em avroBin e jsonSchema . |
from_csv(csvStr, schema[, options]) | Retorna um valor de struct com csvStr e schema . |
schema_of_csv(csv[, options]) | Retorna o esquema de uma cadeia de caracteres CSV no formato DDL. |
to_avro(expr[, opções]) | Retorna um valor binário Avro com o valor struct especificado. |
to_csv(expr[, options]) | Retorna uma cadeia de caracteres CSV com o valor de struct especificado. |
Funções JSON
Função | Descrição |
---|---|
jsonStr : jsonPath | Retorna campos extraídos do jsonStr . |
from_json(jsonStr, schema[, options]) | Retorna um valor de struct com jsonStr e schema . |
get_json_object(expr, path) | Extrai um objeto JSON do path . |
json_array_length(jsonArray) | Retorna o número de elementos na matriz JSON mais externa. |
json_object_keys(jsonObject) | Retorna todas as chaves do objeto JSON mais externo como uma matriz. |
json_tuple(jsonStr, path1 [, …]) | Retorna vários objetos JSON como uma tupla. |
parse_json(jsonStr) | Retorna um valor VARIANT do jsonStr . |
schema_of_json(jsonStr[, options]) | Retorna o esquema de uma cadeia de caracteres JSON no formato DDL. |
schema_of_json_agg(jsonStr[, options]) | Retorna o esquema combinado de cadeias de caracteres JSON em um grupo no formato DDL. |
to_json(expr[, options]) | Retorna uma cadeia de caracteres JSON com o STRUCT ou VARIANT especificado em expr . |
Funções VARIANT
Função | Descrição |
---|---|
variantExpr : jsonPath | Retorna campos extraídos do variantExpr usando um caminho JSON. |
is_variant_null(variantExpr) | Testa se variantExpr é um NULL codificado por VARIANT . |
parse_json(jsonStr) | Retorna um valor VARIANT do jsonStr . |
schema_of_variant(variantExpr) | Retorna o esquema de uma expressão VARIANT no formato DDL. |
schema_of_variant_agg(variantExpr) | Retorna o esquema combinado de todos os valores VARIANT em um grupo no formato DDL. |
to_json(expr[, options]) | Retorna uma cadeia de caracteres JSON com o STRUCT ou VARIANT especificado em expr . |
try_parse_json(jsonStr) | Retorna um valor VARIANT do jsonStr , se possível. Se não for possível, NULL será retornado. |
try_variant_get(variantExpr,path,type) | Extrai um valor do tipo type de variantExpr , especificado por path , ou NULL se não for possível converter para o tipo de destino. |
variant_explode(variantExpr) | Retorna um conjunto de linhas desinstalando variantExpr . |
variant_explode_outer(variantExpr) | Retorna um conjunto de linhas com o desaninhamento de variantExpr usando semântica externa. |
variant_get(variantExpr,path,type) | Extrai um valor do tipo type de variantExpr , especificado por path . |
Funções XPath e XML
Função | Descrição |
---|---|
from_xml(xmlStr, schema[, options]) | Retorna um valor de struct analisado de xmlStr usando schema . |
schema_of_xml(xmlStr[, options]) | Retorna o esquema de uma cadeia de caracteres XML no formato DDL. |
xpath(xml, xpath) | Retorna valores dentro dos nós de xml que correspondem a xpath . |
xpath_boolean(xml, xpath) | Retorna true se a expressão xpath for avaliada como true ou se for encontrado um nó correspondente em xml . |
xpath_double(xml, xpath) | Retorna um valor DOUBLE de um documento XML. |
xpath_float(xml, xpath) | Retorna um valor FLOAT de um documento XML. |
xpath_int(xml, xpath) | Retorna um valor INTEGER de um documento XML. |
xpath_long(xml, xpath) | Retorna um valor BIGINT de um documento XML. |
xpath_number(xml, xpath) | Retorna um valor DOUBLE de um documento XML. |
xpath_short(xml, xpath) | Retorna um valor SHORT de um documento XML. |
xpath_string(xml, xpath) | Retorna o conteúdo do primeiro nó XML que corresponde à expressão XPath. |
Funções de IA
Função | Descrição |
---|---|
ai_analyze_sentiment(conteúdo) | Retorna o sentimento de um texto. |
ai_classify(conteúdo, rótulos) | Classifica o conteúdo fornecido em um dos rótulos fornecidos. |
ai_extract(conteúdo, rótulos) | Extrai entidades especificadas por rótulos de um determinado texto. |
ai_fix_grammar(conteúdo) | Corrige erros gramaticais em um determinado texto. |
ai_forecast(observed, time_col) | Extrapola os dados de séries temporais para o futuro. |
ai_gen(conteúdo) | Invoca um modelo de IA generativo de última geração das APIs do Databricks Foundation Model para responder ao prompt fornecido pelo usuário. |
ai_generate_text(prompt, modelName[, param1, value1] […]) | Preterido: retorna o texto gerado por um LLM (modelo de linguagem grande) selecionado, considerando a solicitação. |
ai_mask(conteúdo, rótulos) | Mascara entidades especificadas dentro de um determinado texto. |
ai_query(endpointName, request, returnType) | Invoca um ponto de extremidade e análises existentes do Mosaic AI Model Serving e retorna a resposta. |
ai_similarity(strExpr1, strExpr2) | Compara duas cadeias de caracteres e calcula a pontuação de similaridade semântica. |
ai_summarize(conteúdo[, max_palavras]) | Gera um resumo de um determinado texto. |
ai_translate(conteúdo, to_lang) | Traduz texto para um idioma de destino especificado. |
vector_search(index, query, num_results) | Consulta um índice Pesquisa de Vetores de IA do Mosaic usando SQL. |
Funções de leitura
Função | Descrição |
---|---|
read_files(path, [optionKey => optionValue] [, …]) | Lê arquivos de dados no armazenamento em nuvem e os retorna no formato tabular. |
read_kafka([optionKey => optionValue] [, …]) | Lê registros de um cluster do Apache Kafka e os retorna em formato tabular. |
read_kinesis({parameter => value} [, …]) | Retorna uma tabela com registros lidos do Kinesis de um ou mais fluxos. |
read_pubsub([parameter => value] [, …]) | Uma função com valor de tabela para leitura de registros do Pub/Sub de um tópico. |
read_pulsar({optionKey => optionValue} [, …]) | Retorna uma tabela com registros lidos do Pulsar. |
read_state_metadata(path) | Retorna uma tabela com linhas que representam os metadados de um estado de consulta de streaming. |
read_statestore(path [, option_key => option_value] […]) | Retorna os registros do repositório de estado de consultas de streaming. |
Funções diversas
Função | Descrição |
---|---|
assert_true(expr) | Retorna um erro se expr não é true. |
CASE expr { WHEN opt1 THEN res1 } […] [ELSE def] END | Retorna resN para a primeira optN , que é igual a expr ou def se não houver correspondência. |
CASE { WHEN cond1 THEN res1 } […] [ELSE def] END | Retorna resN para a primeira condN que é avaliada como true, ou def se nenhuma for encontrada. |
cloud_files_state( { TABLE(table) | checkpoint } ) | Retorna o estado no nível do arquivo de uma origem do carregador automático cloud_files . |
coalesce(expr1, expr2 [, …]) | Retorna o primeiro argumento não nulo. |
cube (expr1 [, …]) | Cria um cubo multidimensional usando as colunas de expressão especificadas. |
current_catalog() | Retorna o catálogo atual. |
current_database() | Retorna o esquema atual. |
current_metastore() | Retorna a ID do Metastore do Catálogo do Unity atual. |
current_recipient(key) | Retorna uma propriedade para o destinatário atual em uma exibição compartilhada com o Compartilhamento Delta. |
current_schema() | Retorna o esquema atual. |
current_user() | Retorna o usuário que está executando a instrução. |
current_version() | Retorna a versão atual do Azure Databricks. |
decode(expr, { key, value } [, …] [,defValue]) | Retorna o valor correspondente à chave. |
elt(index, expr1 [, …] ) | Retorna a enésima expressão. |
equal_null(expr1, expr2) | Retorna true se expr1 for igual a expr2 ou ambas as expressões forem NULL ; caso contrário, retorna false . |
event_log( { TABLE(table) | pipeline_id } ) | Retorna uma tabela do histórico de atualização para uma exibição materializada, tabela de streaming ou pipeline DLT. |
greatest(expr1, expr2 [, …]) | Retorna o maior valor de todos os argumentos e ignora valores nulos. |
grouping(col) | Indica se uma coluna especificada em um GROUPING SET , ROLLUP ou CUBE representa um subtotal. |
grouping_id([col1 [, …]]) | Retorna o nível de agrupamento de um conjunto de colunas. |
hash(expr1 [, …]) | Retorna um valor hash dos argumentos. |
hll_sketch_estimate(expr) | Estima o número de valores distintos coletados em um esboço do HyperLogLog. |
hll_union(expr1, expr2 [,allowDifferentLgConfigK]) | Combina dois esboços do HyperLogLog. |
java_method(class, method[, arg1 [, …]]) | Chama um método com reflexão. |
if(cond, expr1, expr2) | Retornará expr1 se cond for true , caso contrário, expr2 . |
iff(cond, expr1, expr2) | Retornará expr1 se cond for true , caso contrário, expr2 . |
ifnull(expr1, expr2) | Retornará expr2 se expr1 for NULL , caso contrário, expr1 . |
input_file_block_length() | Retorna o comprimento em bytes do bloco que está sendo lido. |
input_file_block_start() | Retorna o deslocamento inicial em bytes do bloco que está sendo lido. |
input_file_name() | Retorna o nome do arquivo que está sendo lido ou uma cadeia de caracteres vazia, se não estiver disponível. |
is_account_group_member(group) | Retornará true se o usuário atual for um membro do grupo no nível da conta. |
is_member(group) | Retornará true se o usuário atual for um membro do grupo no nível do workspace. |
isnull(expr) | Retorna true se expr é NULL . |
isnotnull(expr) | Retorna true se expr é NULL . |
least(expr1, expr2 [, …]) | Retorna o menor valor de todos os argumentos e ignora valores nulos. |
list_secrets([scopeStr]) | Retorna as chaves em todos ou em um escopo que o usuário está autorizado a ver do serviço secreto do Databricks. |
luhn_check(numStr) | Retorna true se numStr passar na verificação do algoritmo Luhn. |
monotonically_increasing_id() | Retorna inteiros de 64 bits que aumentam de maneira monotônica. |
nullif(expr1, expr2) | Retorna NULL se expr1 é igual a expr2 , caso contrário, expr1 . |
nvl(expr1, expr2) | Retornará expr2 se expr1 for NULL , caso contrário, expr1 . |
nvl2(expr1, expr2, expr3) | Retorna expr2 se expr1 não for NULL ; caso contrário, expr3 . |
raise_error(expr) | Gera uma exceção com expr como a mensagem. |
range(end) | Retorna uma tabela de valores dentro de um intervalo especificado. |
range(start, end [, step [, numParts]]) | Retorna uma tabela de valores dentro de um intervalo especificado. |
reflect(class, method[, arg1 [, …]]) | Chama um método com reflexão. |
secret(scope, key) | Extrai um valor secreto com o scope determinado e key do serviço secreto do Databricks. |
session_user() | Retorna o usuário conectado ao Azure Databricks. |
spark_partition_id() | Retorna a ID de partição atual. |
sql_keywords() | Retorna o conjunto de palavras-chave SQL no Azure Databricks. |
stack(numRows, expr1 [, …]) | Separa expr1 , …, exprN em numRows linhas. |
table_changes(table_str, start [, end]) | Retorna um log das alterações em uma tabela do Delta Lake com o Feed de Dados de Alterações habilitado. |
try_reflect(class, method[, arg1 [, …]]) | Chama um método com reflexão, retornando NULL se o método falhar. |
try_secret(scope, key) | Extrai um valor do segredo com o scope e key determinados do Serviço de segredo do Databricks ou NULL se a chave não puder ser recuperada. |
typeof(expr) | Retorna uma cadeia de caracteres de tipo formatada em DDL para o tipo de dados de expr . |
user() | Retorna o usuário que está executando a instrução. |
uuid() | Retorna uma cadeia de caracteres de identificador universalmente exclusivo (UUID). |
window(expr, width[, step [, start]]) | Cria uma janela deslizante com base no salto sobre uma expressão de carimbo de data/hora. |
xxhash64(expr1 [, …]) | Devolve um valor hash de 64 bits dos argumentos. |
version() | Retorna a versão do Apache Spark. |