Funções internas

Aplica-se a: marca de seleção positiva SQL do Databricks marca de seleção positiva 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 NULLs 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 NULLfor , 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 units a um carimbo de data/hora expr.
date_diff(unit, start, stop) Retorna a diferença entre dois carimbos de data/hora medidos em units.
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 units 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 units.
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 units.
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 units a um carimbo de data/hora expr.
timestampdiff(unit, start, stop) Retorna a diferença entre dois carimbos de data/hora medidos em units.
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, hoursmins 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 DECIMAL 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.