Pular para o conteúdo principal

Funções PySpark

Esta página fornece uma lista de funções SQL do PySpark disponíveis no Databricks, com links para a documentação de referência correspondente.

Funções normais

Função

Descrição

broadcast(df)

Marca um DataFrame como sendo pequeno o suficiente para ser usado em uma junção de transmissão (broadcast join).

call_function(funcName, *cols)

Chamar uma função SQL.

col(col)

Retorna uma coluna com base no nome da coluna fornecido.

column(col)

Retorna uma coluna com base no nome da coluna fornecido.

lit(col)

Cria uma coluna com valores literais.

expr(str)

Analisa as strings de expressão e as armazena na coluna correspondente.

funções condicionais

Função

Descrição

coalesce(*cols)

Retorna a primeira coluna que não seja nula.

ifnull(col1, col2)

Retorna col2 se col1 for nulo, ou col1 caso contrário.

nanvl(col1, col2)

Retorna col1 se não for NaN, ou col2 se col1 for NaN.

nullif(col1, col2)

Retorna nulo se col1 for igual a col2, ou col1 caso contrário.

nullifzero(col)

Retorna nulo se col for igual a zero, ou col caso contrário.

nvl(col1, col2)

Retorna col2 se col1 for nulo, ou col1 caso contrário.

nvl2(col1, col2, col3)

Retorna col2 se col1 não for nulo, ou col3 caso contrário.

when(condition, value)

Avalia uma lista de condições e retorna uma entre várias expressões de resultado possíveis.

zeroifnull(col)

Retorna zero se col for nulo, ou col caso contrário.

funções de correspondência de padrões

Função

Descrição

equal_null(col1, col2)

Retorna o mesmo resultado que o operador IGUAL (=) para operandos não nulos, mas retorna verdadeiro se ambos forem nulos, falso se um deles for nulo.

ilike(str, pattern[, escapeChar])

Retorna verdadeiro se a string corresponder ao padrão com escape, sem distinção entre maiúsculas e minúsculas; nulo se algum argumento for nulo; falso caso contrário.

isnan(col)

Uma expressão que retorna verdadeiro se a coluna for NaN.

isnotnull(col)

Retorna verdadeiro se col não for nulo, ou falso caso contrário.

isnull(col)

Uma expressão que retorna verdadeiro se a coluna for nula.

like(str, pattern[, escapeChar])

Retorna verdadeiro se a string corresponder ao padrão com a sequência de escape, nulo se algum argumento for nulo e falso caso contrário.

regexp(str, regexp)

Retorna verdadeiro se str corresponder à expressão regular Java regexp, ou falso caso contrário.

regexp_like(str, regexp)

Retorna verdadeiro se str corresponder à expressão regular Java regexp, ou falso caso contrário.

rlike(str, regexp)

Retorna verdadeiro se str corresponder à expressão regular Java regexp, ou falso caso contrário.

Funções de classificação

Função

Descrição

asc(col)

Retorna uma expressão de classificação para a coluna de destino em ordem crescente.

asc_nulls_first(col)

Retorna uma expressão de classificação baseada na ordem crescente do nome da coluna fornecida, sendo que valores nulos são retornados antes de valores não nulos.

asc_nulls_last(col)

Retorna uma expressão de classificação baseada na ordem crescente do nome da coluna fornecida, e os valores nulos aparecem após os valores não nulos.

desc(col)

Retorna uma expressão de classificação para a coluna de destino em ordem decrescente.

desc_nulls_first(col)

Retorna uma expressão de classificação baseada na ordem decrescente do nome da coluna fornecida, em que os valores nulos aparecem antes dos valores não nulos.

desc_nulls_last(col)

Retorna uma expressão de classificação baseada na ordem decrescente do nome da coluna fornecida, e os valores nulos aparecem após os valores não nulos.

Funções matemáticas

Função

Descrição

abs(col)

Calcular o valor absoluto da coluna ou expressão fornecida.

acos(col)

Calcule o arco cosseno (também conhecido como cosseno inverso) da coluna ou expressão fornecida.

acosh(col)

Calcule o cosseno hiperbólico inverso (também conhecido como arcosh) da coluna ou expressão fornecida.

asin(col)

Calcule o arco seno da coluna de entrada.

asinh(col)

Calcule o seno hiperbólico inverso da coluna de entrada.

atan(col)

Calcular a tangente inversa da coluna de entrada.

atan2(col1, col2)

Calcule o ângulo em radianos entre o eixo x positivo de um plano e o ponto dado pelas coordenadas.

atanh(col)

Calcular a tangente hiperbólica inversa da coluna de entrada.

bin(col)

Retorna a representação em formato de string do valor binário da coluna especificada.

bround(col[, scale])

Arredonde o valor fornecido para casas decimais da escala usando o modo de arredondamento HALF_EVEN se a escala for maior ou igual a 0, ou para a parte inteira quando a escala for menor ou igual a 0.

cbrt(col)

Calcule a raiz cúbica do valor fornecido.

ceil(col[, scale])

Calcule o teto do valor dado.

ceiling(col[, scale])

Calcule o teto do valor dado.

conv(col, fromBase, toBase)

Converter um número em uma coluna de strings de uma base para outra.

cos(col)

Calcule o cosseno da coluna de entrada.

cosh(col)

Calcule o cosseno hiperbólico da coluna de entrada.

cot(col)

Calcule a cotangente da coluna de entrada.

csc(col)

Calcule a cossecante da coluna de entrada.

degrees(col)

Converte um ângulo medido em radianos para um ângulo aproximadamente equivalente medido em graus.

e()

Retorna o número de Euler.

exp(col)

Calcule a exponencial do valor dado.

expm1(col)

Calcule a exponencial do valor dado menos um.

factorial(col)

Calcule o fatorial do valor dado.

floor(col[, scale])

Calcule o piso do valor fornecido.

greatest(*cols)

Retorna o maior valor da lista de nomes de colunas, ignorando valores nulos.

hex(col)

Calcula o valor hexadecimal da coluna fornecida, que pode ser do tipo StringType, BinaryType, IntegerType ou LongType.

hypot(col1, col2)

Calcular sqrt(a^2 + b^2) sem estouro ou subfluxo intermediário.

least(*cols)

Retorna o menor valor da lista de nomes de colunas, ignorando valores nulos.

ln(col)

Retorna o logaritmo natural do argumento.

log(arg1[, arg2])

Retorna o logaritmo do segundo argumento com base no primeiro argumento.

log10(col)

Calcule o logaritmo do valor dado na base 10.

log1p(col)

Calcule o logaritmo natural do valor dado mais um.

log2(col)

Retorna o logaritmo na base 2 do argumento.

negate(col)

Retorna o valor negativo.

negative(col)

Retorna o valor negativo.

pi()

Retorna Pi.

pmod(dividend, divisor)

Retorna o valor positivo do dividendo módulo o divisor.

positive(col)

Retorna o valor.

pow(col1, col2)

Retorna o valor do primeiro argumento elevado à potência do segundo argumento.

power(col1, col2)

Retorna o valor do primeiro argumento elevado à potência do segundo argumento.

radians(col)

Converte um ângulo medido em graus para um ângulo aproximadamente equivalente medido em radianos.

rand([seed])

Gera uma coluna aleatória com amostras independentes e identicamente distribuídas (iid) uniformemente distribuídas em [0.0, 1.0).

randn([seed])

Gera uma coluna aleatória com amostras independentes e identicamente distribuídas (iid) da distribuição normal padrão.

rint(col)

Retorna o valor double mais próximo do argumento e que seja igual a um número inteiro.

round(col[, scale])

Arredonde o valor fornecido para casas decimais da escala usando o modo de arredondamento HALF_UP se a escala for maior ou igual a 0, ou para a parte inteira quando a escala for menor que 0.

sec(col)

Calcular a secante da coluna de entrada.

sign(col)

Calcule o sinal do valor dado.

signum(col)

Calcule o sinal do valor dado.

sin(col)

Calcule o seno da coluna de entrada.

sinh(col)

Calcule o seno hiperbólico da coluna de entrada.

sqrt(col)

Calcule a raiz quadrada do valor float especificado.

tan(col)

Calcule a tangente da coluna de entrada.

tanh(col)

Calcule a tangente hiperbólica da coluna de entrada.

try_add(left, right)

Retorna a soma dos valores de left e right, e o resultado é nulo em caso de estouro de capacidade.

try_divide(left, right)

Devolve dividendos/divisores.

try_mod(left, right)

Devolve o restante após o dividendo/divisor.

try_multiply(left, right)

Retorna o valor de left multiplicado por right e o resultado é nulo em caso de estouro de capacidade.

try_subtract(left, right)

Retorna o valor da esquerda menos o da direita e o resultado é nulo em caso de estouro de capacidade.

unhex(col)

Inverso de hexadecimal.

uniform(min, max[, seed])

Retorna um valor aleatório com valores independentes e identicamente distribuídos (iid) dentro do intervalo de números especificado.

width_bucket(v, min, max, numBucket)

Retorna o número do intervalo (bucket) no qual o valor desta expressão se enquadraria após ser avaliado.

funções de strings

Função

Descrição

ascii(col)

Calcule o valor numérico do primeiro caractere da coluna de strings.

base64(col)

Calcula a codificação BASE64 de uma coluna binária e a retorna como uma coluna de strings.

bit_length(col)

Calcula o comprimento em bits da coluna de strings especificada.

btrim(str[, trim])

Remova os caracteres de aparar iniciais e finais da string.

char(col)

Retorna o caractere ASCII que possui o equivalente binário em col.

char_length(str)

Retorna o comprimento em caracteres de dados em formato de string ou o número de bytes de dados binários.

character_length(str)

Retorna o comprimento em caracteres de dados em formato de string ou o número de bytes de dados binários.

collate(col, collation)

Marca uma determinada coluna com a ordenação especificada.

collation(col)

Retorna o nome de agrupamento de uma determinada coluna.

concat_ws(sep, *cols)

Concatena várias colunas de strings de entrada em uma única coluna de strings, usando o separador fornecido.

contains(left, right)

Retorna um valor booleano.

decode(col, charset)

Calcula o primeiro argumento em uma string a partir de um binário usando o conjunto de caracteres fornecido (um de US-ASCII, ISO-8859-1, UTF-8, UTF-16BE, UTF-16LE, UTF-16, UTF-32).

elt(*inputs)

Retorna a n-ésima entrada, por exemplo, retorna input2 quando n é igual a 2.

encode(col, charset)

Calcula o primeiro argumento em binário a partir de uma string usando o conjunto de caracteres fornecido (um de US-ASCII, ISO-8859-1, UTF-8, UTF-16BE, UTF-16LE, UTF-16, UTF-32).

endswith(str, suffix)

Retorna um valor booleano.

find_in_set(str, str_array)

Retorna o índice (baseado em 1) das strings fornecidas (str) na lista delimitada por vírgulas (strArray).

format_number(col, d)

Formata o número X para um formato como #,--#,--#.--, arredondado para d casas decimais com o modo de arredondamento HALF_EVEN e retorna o resultado como uma string.

format_string(format, *cols)

Formata os argumentos no estilo printf e retorna o resultado como uma coluna de strings.

initcap(col)

Traduza a primeira letra de cada palavra para maiúscula na frase.

instr(str, substr)

Localize a posição da primeira ocorrência da coluna substr nas strings fornecidas.

is_valid_utf8(str)

Retorna verdadeiro se a entrada for uma string UTF-8 válida; caso contrário, retorna falso.

lcase(str)

Retorna uma string com todos os caracteres convertidos para minúsculas.

left(str, len)

Retorna os len caracteres mais à esquerda (len pode ser do tipo string) da string str; se len for menor ou igual a 0, o resultado é uma string vazia.

length(col)

Calcula o comprimento de caracteres de dados em formato de string ou o número de bytes de dados binários.

levenshtein(left, right[, threshold])

Calcule a distância de Levenshtein entre as duas strings fornecidas.

locate(substr, str[, pos])

Localize a posição da primeira ocorrência de substr em uma coluna de strings, após position pos.

lower(col)

Converte uma expressão de string para minúsculas.

lpad(col, len, pad)

Preencha a coluna de strings com um pad à esquerda até atingir a largura definida por len.

ltrim(col[, trim])

Remova os espaços em branco do final da string especificada.

make_valid_utf8(str)

Retorna uma nova string na qual todas as sequências de bytes UTF-8 inválidas, se houver, são substituídas pelo caractere de substituição Unicode (U+FFFD).

mask(col[, upperChar, lowerChar, digitChar, ...])

Mascara o valor da string fornecida.

octet_length(col)

Calcula o comprimento em bytes da coluna de strings especificada.

overlay(src, replace, pos[, len])

Sobreponha a porção especificada de src com replace, começando na posição de byte pos de src e prosseguindo por len bytes.

position(substr, str[, start])

Retorna a posição da primeira ocorrência de substr em str após a posição começar.

printf(format, *cols)

Formata os argumentos no estilo printf e retorna o resultado como uma coluna de strings.

randstr(length[, seed])

Retorna uma string do comprimento especificado, cujos caracteres são escolhidos uniformemente ao acaso a partir do seguinte pool de caracteres: 0-9, az, AZ.

regexp_count(str, regexp)

Retorna a contagem do número de vezes que o padrão de expressão regular Java regexp é encontrado nas strings str.

regexp_extract(str, pattern, idx)

Extrai um grupo específico que corresponda à expressão regular Java regexp, da coluna de strings especificada.

regexp_extract_all(str, regexp[, idx])

Extraia todas as strings em str que correspondam à expressão regular Java regexp e ao índice do grupo de expressões regulares.

regexp_instr(str, regexp[, idx])

Retorna a posição da primeira substring na string que corresponde à expressão regular Java regexp e ao índice do grupo de expressões regulares.

regexp_replace(string, pattern, replacement)

Substitui todas as substrings do valor da string especificada que correspondem à expressão regular com substituição.

regexp_substr(str, regexp)

Retorna a primeira substring que corresponde à expressão regular Java regexp dentro da string str.

repeat(col, n)

Repete uma coluna de strings n vezes e a retorna como uma nova coluna de strings.

replace(src, search[, replace])

Substitui todas as ocorrências de "search" por "replace".

right(str, len)

Retorna os últimos len caracteres (len pode ser do tipo string) da string str. Se len for menor ou igual a 0, o resultado é uma string vazia.

rpad(col, len, pad)

Preencha a coluna de strings com um espaçamento à direita até atingir a largura definida por `len`.

rtrim(col[, trim])

Remova os espaços em branco da extremidade direita do valor da string especificada.

sentences(string[, language, country])

Divide uma string em arrays de frases, onde cada frase é um array de palavras.

soundex(col)

Retorna a codificação SoundEx para uma string.

split(str, pattern[, limit])

Divide a string em torno de correspondências do padrão fornecido.

split_part(src, delimiter, partNum)

Divide a string pelo delimitador e retorna a parte solicitada da divisão (baseada em 1).

startswith(str, prefix)

Retorna um valor booleano.

substr(str, pos[, len])

Retorna a substring de str que começa em pos e tem comprimento len, ou a fatia do array de bytes que começa em pos e tem comprimento len.

substring(str, pos, len)

A substring começa na posição `pos` e tem comprimento `len` quando `str` é do tipo string, ou retorna a fatia do array de bytes que começa na posição `pos` em `byte` e tem comprimento `len` quando `str` é do tipo binário.

substring_index(str, delim, count)

Retorna a substring da string str antes do número de ocorrências do delimitador delim.

to_binary(col[, format])

Converte a coluna de entrada em um valor binário com base no formato fornecido.

to_char(col, format)

Converter col em strings com base no formato.

to_number(col, format)

Converter strings 'col' em números com base no formato de strings 'format'.

to_varchar(col, format)

Converter col em strings com base no formato.

translate(srcCol, matching, replace)

Traduza qualquer caractere em srcCol por um caractere correspondente em matching.

trim(col[, trim])

Remova os espaços em branco das extremidades da coluna de strings especificada.

try_to_binary(col[, format])

Tente executar as operações to_binary , mas retorne um valor NULL em vez de gerar um erro se a conversão não puder ser realizada.

try_to_number(col, format)

Converter strings col em um número com base no formato de strings format.

try_validate_utf8(str)

Retorna o valor de entrada se ele corresponder a uma string UTF-8 válida, ou NULL caso contrário.

ucase(str)

Retorna uma string com todos os caracteres convertidos para maiúsculas.

unbase64(col)

Decodifica uma coluna de strings codificadas em BASE64 e a retorna como uma coluna binária.

upper(col)

Converte uma expressão de string para maiúsculas.

validate_utf8(str)

Retorna o valor de entrada se ele corresponder a uma string UTF-8 válida, ou emite um erro caso contrário.

Funções bit a bit

Função

Descrição

bit_count(col)

Retorna o número de bits definidos no argumento expr como um inteiro sem sinal de 64 bits, ou NULL se o argumento for NULL.

bit_get(col, pos)

Retorna o valor do bit (0 ou 1) na posição especificada.

bitwise_not(col)

Calcular NOT bit a bit.

getbit(col, pos)

Retorna o valor do bit (0 ou 1) na posição especificada.

shiftleft(col, numBits)

Desloque o valor fornecido numBits para a esquerda.

shiftright(col, numBits)

(Com sinal) desloca o valor fornecido numBits para a direita.

shiftrightunsigned(col, numBits)

Desloca para a direita o valor fornecido numBits, sem sinal.

Funções de data/hora

Função

Descrição

add_months(start, months)

Retorna a data que está meses meses após o início.

convert_timezone(sourceTz, targetTz, sourceTs)

Converte o carimbo de data/hora sem fuso horário (sourceTs) do fuso horário sourceTz para o fuso horário targetTz.

curdate()

Retorna a data atual no início da avaliação da consulta como uma coluna do tipo DateType.

current_date()

Retorna a data atual no início da avaliação da consulta como uma coluna do tipo DateType.

current_timestamp()

Retorna o carimbo de data/hora atual no início da avaliação da consulta como uma coluna do tipo TimestampType.

current_timezone()

Retorna o fuso horário local da sessão atual.

date_add(start, days)

Retorna a data que corresponde a dias após o início.

date_diff(end, start)

Retorna o número de dias desde o início até o fim.

date_format(date, format)

Converte uma data/hora/string em um valor de string no formato especificado pelo formato de data fornecido como segundo argumento.

date_from_unix_date(days)

Criar data a partir do número de dias desde 1970-01-01.

date_part(field, source)

Extrai uma parte da fonte de data/hora ou intervalo.

date_sub(start, days)

Retorna a data que está dias antes de começar.

date_trunc(format, timestamp)

Retorna o carimbo de data/hora truncado para a unidade especificada pelo formato.

dateadd(start, days)

Retorna a data que corresponde a dias após o início.

datediff(end, start)

Retorna o número de dias desde o início até o fim.

datepart(field, source)

Extrai uma parte da fonte de data/hora ou intervalo.

day(col)

Extrai o dia do mês de uma determinada data/hora como um número inteiro.

dayname(col)

Retorna o nome abreviado do dia da semana, composto por três letras, a partir da data fornecida.

dayofmonth(col)

Extrai o dia do mês de uma determinada data/hora como um número inteiro.

dayofweek(col)

Extrai o dia da semana correspondente a uma determinada data/hora como um número inteiro.

dayofyear(col)

Extrai o dia do ano de uma determinada data/hora como um número inteiro.

extract(field, source)

Extrai uma parte da fonte de data/hora ou intervalo.

from_unixtime(timestamp[, format])

Converte o número de segundos da época Unix (1970-01-01 00:00:00 UTC) para uma string representando o timestamp daquele momento no fuso horário atual do sistema, no formato especificado.

from_utc_timestamp(timestamp, tz)

Essa é uma função comum para bancos de dados que suportam TIMESTAMP SEM FUSO HORÁRIO.

hour(col)

Extrair as horas de um determinado registro de data e hora como um número inteiro.

last_day(date)

Retorna o último dia do mês a que a data fornecida pertence.

localtimestamp()

Retorna o carimbo de data/hora atual, sem fuso horário, no início da avaliação da consulta, como uma coluna de carimbo de data/hora sem fuso horário.

make_date(year, month, day)

Retorna uma coluna com uma data formada a partir das colunas de ano, mês e dia.

make_dt_interval([days, hours, mins, secs])

Defina a duração do DayTimeIntervalType em dias, horas, minutos e segundos.

make_interval([years, months, weeks, days, ...])

Crie intervalos de tempo em anos, meses, semanas, dias, horas, minutos e segundos.

make_timestamp(years, months, days, hours, ...)

Criar registro de data e hora a partir de campos de anos, meses, dias, horas, minutos, segundos e fuso horário.

make_timestamp_ltz(years, months, days, ...)

Crie o registro de data e hora atual com o fuso horário local a partir dos campos de anos, meses, dias, horas, minutos, segundos e fuso horário.

make_timestamp_ntz(years, months, days, ...)

Criar data e hora locais a partir dos campos de anos, meses, dias, horas, minutos e segundos.

make_ym_interval([years, months])

Converter anos em meses para intervalos de ano-mês.

minute(col)

Extrair os minutos de um determinado registro de data e hora como um número inteiro.

month(col)

Extrair o mês de uma determinada data/hora como um número inteiro.

monthname(col)

Retorna o nome abreviado do mês, composto por três letras, a partir da data fornecida.

months_between(date1, date2[, roundOff])

Retorna o número de meses entre as datas data1 e data2.

next_day(date, dayOfWeek)

Retorna a primeira data posterior ao valor da coluna de data, com base no segundo argumento de dia da semana.

now()

Retorna o carimbo de data/hora atual no início da avaliação da consulta.

quarter(col)

Extrair o trimestre de uma determinada data/hora como um número inteiro.

second(col)

Extraia os segundos de uma data específica como um número inteiro.

session_window(timeColumn, gapDuration)

Gera uma janela de sessão a partir de um carimbo de data/hora que especifica a coluna.

timestamp_add(unit, quantity, ts)

Obtém a diferença entre os registros de data e hora nas unidades especificadas, truncando a parte fracionária.

timestamp_diff(unit, start, end)

Obtém a diferença entre os registros de data e hora nas unidades especificadas, truncando a parte fracionária.

timestamp_micros(col)

Cria um registro de data e hora a partir do número de microssegundos desde a época UTC.

timestamp_millis(col)

Cria um registro de data e hora a partir do número de milissegundos desde a época UTC.

timestamp_seconds(col)

Converte o número de segundos da época Unix (1970-01-01T00:00:00Z) para um timestamp.

to_date(col[, format])

Converte uma coluna em PySpark.sql.types.DateType usando o formato especificado opcionalmente.

to_timestamp(col[, format])

Converte uma coluna em PySpark.sql.types.TimestampType usando o formato especificado opcionalmente.

to_timestamp_ltz(timestamp[, format])

Analisa o carimbo de data/hora com o formato correto para um carimbo de data/hora com fuso horário.

to_timestamp_ntz(timestamp[, format])

Analisa o carimbo de data/hora com o formato correto para um carimbo de data/hora sem fuso horário.

to_unix_timestamp(timestamp[, format])

Retorna o timestamp UNIX do horário fornecido.

to_utc_timestamp(timestamp, tz)

Essa é uma função comum para bancos de dados que suportam TIMESTAMP SEM FUSO HORÁRIO.

trunc(date, format)

Retorna a data truncada para a unidade especificada pelo formato.

try_make_interval([years, months, weeks, ...])

Tente executar uma operação make_interval , mas retorne um valor NULL em vez de gerar um erro se o intervalo não puder ser criado.

try_make_timestamp(years, months, days, ...)

Tente criar um registro de data e hora a partir dos campos de anos, meses, dias, horas, minutos, segundos e fuso horário.

try_make_timestamp_ltz(years, months, days, ...)

Tente criar o registro de data e hora atual com o fuso horário local a partir dos campos de anos, meses, dias, horas, minutos, segundos e fuso horário.

try_make_timestamp_ntz(years, months, days, ...)

Tente criar uma data e hora local a partir dos campos de anos, meses, dias, horas, minutos e segundos.

try_to_timestamp(col[, format])

Analisa a coluna com o formato para um carimbo de data/hora.

unix_date(col)

Retorna o número de dias desde 01/01/1970.

unix_micros(col)

Retorna o número de microssegundos desde 01/01/1970 às 00:00:00 UTC.

unix_millis(col)

Retorna o número de milissegundos desde 01/01/1970 às 00:00:00 UTC.

unix_seconds(col)

Retorna o número de segundos desde 01/01/1970 às 00:00:00 UTC.

unix_timestamp([timestamp, format])

Converter sequências de tempo com o padrão fornecido ('yyyy-MM-dd HH:mm').', por default) para carimbo de data/hora Unix (em segundos), usando o fuso horário default e a localidade default , retorna nulo se falhar.

weekday(col)

Retorna o dia da semana correspondente à data e hora (0 = segunda-feira, 1 = terça-feira, ..., 6 = domingo).

weekofyear(col)

Extraia o número da semana de uma determinada data como um número inteiro.

window(timeColumn, windowDuration[, ...])

Agrupar linhas em uma ou mais janelas de tempo, dado um registro de data e hora na coluna especificada.

window_time(windowColumn)

Calcular o tempo do evento a partir de uma coluna de janela.

year(col)

Extrai o ano de uma determinada data/hora como um número inteiro.

Funções de hash

Função

Descrição

crc32(col)

Calcula o valor de verificação de redundância cíclica (CRC32) de uma coluna binária e retorna o valor como um bigint.

hash(*cols)

Calcula o código hash das colunas fornecidas e retorna o resultado como uma coluna do tipo int.

md5(col)

Calcula o hash MD5 e retorna o valor como uma string hexadecimal de 32 caracteres.

sha(col)

Retorna um valor de hash sha1 como uma string hexadecimal da coluna.

sha1(col)

Retorna o resultado da operação SHA-1 em formato de string hexadecimal.

sha2(col, numBits)

Retorna as strings hexadecimais resultantes da família de funções hash SHA-2 (SHA-224, SHA-256, SHA-384 e SHA-512).

xxhash64(*cols)

Calcula o código hash das colunas fornecidas usando a variante de 64 bits do algoritmo xxHash e retorna o resultado como uma coluna longa.

Funções de coleta

Função

Descrição

aggregate(col, initialValue, merge[, finish])

Aplica um operador binário a um estado inicial e a todos os elementos da matriz, reduzindo-os a um único estado.

array_sort(col[, comparator])

Ordena a matriz de entrada em ordem crescente.

cardinality(col)

Retorna o comprimento da matriz ou mapa armazenado na coluna.

concat(*cols)

Concatena várias colunas de entrada em uma única coluna.

element_at(col, extraction)

Retorna o elemento da matriz no índice fornecido (baseado em 1).

exists(col, f)

Retorna se um predicado é verdadeiro para um ou mais elementos da matriz.

filter(col, f)

Retorna uma matriz de elementos para os quais um predicado é válido em uma determinada matriz.

forall(col, f)

Retorna se um predicado é verdadeiro para cada elemento da matriz.

map_filter(col, f)

Retorna uma nova coluna de mapa cujo valor key`par` satisfaz uma determinada função predicativa.

map_zip_with(col1, col2, f)

Mesclar dois mapas dados em um único mapa aplicando uma função ao valor key`par`.

reduce(col, initialValue, merge[, finish])

Aplica um operador binário a um estado inicial e a todos os elementos da matriz, reduzindo-os a um único estado.

reverse(col)

Retorna uma string invertida ou um array com os elementos em ordem inversa.

size(col)

Retorna o comprimento da matriz ou mapa armazenado na coluna.

transform(col, f)

Retorna uma matriz de elementos após aplicar transformações a cada elemento da matriz de entrada.

transform_keys(col, f)

Aplica uma função a cada par key-valor em um mapa e retorna um mapa com os resultados dessas aplicações como a nova chave para os pares.

transform_values(col, f)

Aplica uma função a cada par key-valor em um mapa e retorna um mapa com os resultados dessas aplicações como os novos valores para os pares.

try_element_at(col, extraction)

Retorna o elemento da matriz no índice fornecido (baseado em 1).

zip_with(left, right, f)

Combinar dois arrays dados, elemento por elemento, em um único array usando uma função.

Funções de matriz

Função

Descrição

array(*cols)

Cria uma nova coluna de matriz a partir das colunas de entrada ou dos nomes das colunas.

array_append(col, value)

Retorna uma nova coluna de matriz adicionando o valor à coluna de matriz existente.

array_compact(col)

Remove valores nulos da matriz.

array_contains(col, value)

Retorna um valor booleano indicando se a matriz contém o valor fornecido: nulo se a matriz for nula, verdadeiro se a matriz contiver o valor fornecido e falso caso contrário.

array_distinct(col)

Remove valores duplicados da matriz.

array_except(col1, col2)

Retorna um novo array contendo os elementos presentes em col1, mas não em col2, sem duplicatas.

array_insert(arr, pos, value)

Insere um item em uma matriz específica, em um índice de matriz especificado.

array_intersect(col1, col2)

Retorna uma nova matriz contendo a interseção dos elementos em col1 e col2, sem duplicatas.

array_join(col, delimiter[, null_replacement])

Retorna uma coluna de strings concatenando os elementos da coluna da matriz de entrada usando o delimitador.

array_max(col)

Retorna o valor máximo da matriz.

array_min(col)

Retorna o valor mínimo da matriz.

array_position(col, value)

Localiza a posição da primeira ocorrência do valor fornecido na matriz fornecida.

array_prepend(col, value)

Retorna um array contendo o elemento fornecido como primeiro elemento e os demais elementos do array original.

array_remove(col, element)

Remova todos os elementos iguais ao elemento fornecido da matriz.

array_repeat(col, count)

Cria uma matriz contendo uma coluna que se repete uma contagem de vezes.

array_size(col)

Retorna o número total de elementos na matriz.

array_union(col1, col2)

Retorna um novo array contendo a união dos elementos em col1 e col2, sem duplicatas.

arrays_overlap(a1, a2)

Retorna uma coluna booleana indicando se as matrizes de entrada possuem elementos comuns não nulos, retornando verdadeiro se possuírem, nulo se as matrizes não contiverem nenhum elemento comum, mas não estiverem vazias e pelo menos uma delas contiver um elemento nulo, e falso caso contrário.

arrays_zip(*cols)

Retorna um array mesclado de structs em que a N-ésima struct contém todos os N-ésimos valores dos arrays de entrada.

flatten(col)

Cria um único array a partir de um array de arrays.

get(col, index)

Retorna o elemento de uma matriz no índice fornecido (baseado em 0).

sequence(start, stop[, step])

Gere uma sequência de números inteiros de começar a parar, incrementando em o passo.

shuffle(col[, seed])

Gera uma permutação aleatória da matriz fornecida.

slice(x, start, length)

Retorna uma nova coluna de matriz, dividindo a coluna da matriz de entrada a partir de um índice inicial até um comprimento específico.

sort_array(col[, asc])

Ordena a matriz de entrada em ordem crescente ou decrescente, de acordo com a ordem natural dos elementos da matriz.

Funções de estrutura

Função

Descrição

named_struct(*cols)

Cria uma estrutura com os nomes e valores dos campos fornecidos.

struct(*cols)

Cria uma nova coluna de estrutura.

Funções do mapa

Função

Descrição

create_map(*cols)

Cria uma nova coluna de mapa a partir de um número par de colunas de entrada ou referências de colunas.

map_concat(*cols)

Retorna a união de todos os mapas fornecidos.

map_contains_key(col, value)

Retorna verdadeiro se o mapa contiver a key.

map_entries(col)

Retorna uma matriz não ordenada contendo todas as entradas do mapa fornecido.

map_from_arrays(col1, col2)

Cria um novo mapa a partir de duas matrizes.

map_from_entries(col)

Transforma um array de entradas de key-valor (estruturas com dois campos) em um mapa.

map_keys(col)

Retorna um array não ordenado contendo a chave do mapa.

map_values(col)

Retorna um array não ordenado contendo os valores do mapa.

str_to_map(text[, pairDelim, keyValueDelim])

Converte uma string em um mapa após dividir o texto em pares key-valor usando delimitadores.

Funções agregadas

Função

Descrição

any_value(col[, ignoreNulls])

Retorna algum valor de col para um grupo de linhas.

approx_count_distinct(col[, rsd])

Retorna uma nova coluna, que estima a contagem aproximada de elementos distintos em uma coluna especificada ou em um grupo de colunas.

approx_percentile(col, percentage[, accuracy])

Retorna o percentil aproximado da coluna numérica col que corresponde ao menor valor entre os valores ordenados de col (classificados do menor para o maior), de forma que no máximo % dos valores de col sejam menores ou iguais a esse valor.

array_agg(col)

Retorna uma lista de objetos com duplicados.

avg(col)

Retorna a média dos valores em um grupo.

bit_and(col)

Retorna o resultado da operação AND bit a bit entre todos os valores de entrada não nulos, ou nulo caso não haja nenhum.

bit_or(col)

Retorna o resultado da operação OR bit a bit de todos os valores de entrada não nulos, ou nulo caso não haja nenhum.

bit_xor(col)

Retorna o resultado da operação XOR bit a bit de todos os valores de entrada não nulos, ou nulo caso não haja nenhum.

bitmap_construct_agg(col)

Retorna um bitmap com as posições dos bits definidos a partir de todos os valores da coluna de entrada.

bitmap_or_agg(col)

Retorna um bitmap que é o resultado da operação OR bit a bit de todos os bitmaps da coluna de entrada.

bool_and(col)

Retorna verdadeiro se todos os valores de col forem verdadeiros.

bool_or(col)

Retorna verdadeiro se pelo menos um valor de col for verdadeiro.

collect_list(col)

Coleta os valores de uma coluna em uma lista, mantendo os duplicados, e retorna essa lista de objetos.

collect_set(col)

Coleta os valores de uma coluna em um conjunto, eliminando duplicados, e retorna esse conjunto de objetos.

corr(col1, col2)

Retorna uma nova coluna para o coeficiente de correlação de Pearson para col1 e col2.

count(col)

Retorna o número de itens em um grupo.

count_distinct(col, *cols)

Retorna uma nova coluna para a contagem distinta de col ou cols.

count_if(col)

Retorna o número de valores VERDADEIROS para a coluna.

count_min_sketch(col, eps, confidence[, seed])

Retorna um esboço de contagem mínima de uma coluna com o valor de esp, confiança e semente fornecidos.

covar_pop(col1, col2)

Retorna uma nova coluna para a covariância populacional de col1 e col2.

covar_samp(col1, col2)

Retorna uma nova coluna para a covariância amostral de col1 e col2.

every(col)

Retorna verdadeiro se todos os valores de col forem verdadeiros.

first(col[, ignorenulls])

Retorna o primeiro valor de um grupo.

first_value(col[, ignoreNulls])

Retorna o primeiro valor da coluna (col) para um grupo de linhas.

grouping(col)

Indica se uma coluna especificada em uma lista GROUP BY está agregada ou não, retornando 1 para agregada ou 0 para não agregada no conjunto de resultados.

grouping_id(*cols)

Retorna o nível de agrupamento, igual a

histogram_numeric(col, nBins)

Calcule um histograma da coluna numérica usando nb intervalos.

hll_sketch_agg(col[, lgConfigK])

Retorna a representação binária atualizável do Datasketches HllSketch configurado com o argumento lgConfigK.

hll_union_agg(col[, allowDifferentLgConfigK])

Retorna a representação binária atualizável do Datasketches HllSketch, gerada pela fusão de instâncias Datasketches HllSketch criadas anteriormente por meio de uma instância Datasketches Union.

kurtosis(col)

Retorna a curtose dos valores em um grupo.

last(col[, ignorenulls])

Retorna o último valor em um grupo.

last_value(col[, ignoreNulls])

Retorna o último valor da coluna para um grupo de linhas.

listagg(col[, delimiter])

Retorna a concatenação de valores de entrada não nulos, separados pelo delimitador.

listagg_distinct(col[, delimiter])

Retorna a concatenação de valores de entrada distintos e não nulos, separados pelo delimitador.

max(col)

Retorna o valor máximo da expressão em um grupo.

max_by(col, ord)

Retorna o valor do parâmetro col que está associado ao valor máximo do parâmetro ord.

mean(col)

Retorna a média dos valores em um grupo.

median(col)

Retorna a mediana dos valores em um grupo.

min(col)

Retorna o valor mínimo da expressão em um grupo.

min_by(col, ord)

Retorna o valor do parâmetro col que está associado ao valor mínimo do parâmetro ord.

mode(col[, deterministic])

Retorna o valor mais frequente em um grupo.

percentile(col, percentage[, frequency])

Retorna o(s) percentil(is) exato(s) da coluna numérica expr na(s) porcentagem(ões) fornecida(s) com intervalo de valores em [0,0, 1,0].

percentile_approx(col, percentage[, accuracy])

Retorna o percentil aproximado da coluna numérica col que corresponde ao menor valor entre os valores ordenados de col (classificados do menor para o maior), de forma que no máximo % dos valores de col sejam menores ou iguais a esse valor.

product(col)

Retorna o produto dos valores em um grupo.

regr_avgx(y, x)

Retorna a média da variável independente para pares não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

regr_avgy(y, x)

Retorna a média da variável dependente para pares não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

regr_count(y, x)

Retorna o número de pares de números não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

regr_intercept(y, x)

Retorna o intercepto da reta de regressão linear univariada para pares não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

regr_r2(y, x)

Retorna o coeficiente de determinação para pares não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

regr_slope(y, x)

Retorna a inclinação da reta de regressão linear para pares não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

regr_sxx(y, x)

Retorna REGR_COUNT(y, x) * VAR_POP(x) para pares não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

regr_sxy(y, x)

Retorna REGR_COUNT(y, x) * COVAR_POP(y, x) para pares não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

regr_syy(y, x)

Retorna REGR_COUNT(y, x) * VAR_POP(y) para pares não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

skewness(col)

Retorna a assimetria dos valores em um grupo.

some(col)

Retorna verdadeiro se pelo menos um valor de col for verdadeiro.

std(col)

Pseudônimo para stddev_samp.

stddev(col)

Pseudônimo para stddev_samp.

stddev_pop(col)

Retorna o desvio padrão populacional da expressão em um grupo.

stddev_samp(col)

Retorna o desvio padrão amostral não enviesado da expressão em um grupo.

string_agg(col[, delimiter])

Retorna a concatenação de valores de entrada não nulos, separados pelo delimitador.

string_agg_distinct(col[, delimiter])

Retorna a concatenação de valores de entrada distintos e não nulos, separados pelo delimitador.

sum(col)

Retorna a soma de todos os valores na expressão.

sum_distinct(col)

Retorna a soma dos valores distintos na expressão.

try_avg(col)

Retorna a média calculada a partir dos valores de um grupo e o resultado é nulo em caso de estouro de capacidade.

try_sum(col)

Retorna a soma calculada a partir dos valores de um grupo e o resultado é nulo em caso de estouro.

var_pop(col)

Retorna a variância populacional dos valores em um grupo.

var_samp(col)

Retorna a variância amostral não enviesada dos valores em um grupo.

variance(col)

Alias para var_samp

Funções da janela

Função

Descrição

cume_dist()

Retorna a distribuição cumulativa de valores dentro de uma partição da janela, ou seja, a fração de linhas que estão abaixo da linha atual.

dense_rank()

Retorna a classificação das linhas dentro de uma partição de janela, sem lacunas.

lag(col[, offset, default])

Retorna o valor correspondente ao deslocamento de linhas anterior à linha atual e default caso haja menos linhas do que o deslocamento de linhas anterior à linha atual.

lead(col[, offset, default])

Retorna o valor correspondente ao deslocamento de linhas após a linha atual e default caso haja menos linhas do que o deslocamento após a linha atual.

nth_value(col, offset[, ignoreNulls])

Retorna o valor correspondente à linha de deslocamento (offset) da moldura da janela (contando a partir de 1) e nulo se o tamanho da moldura da janela for menor que o número de linhas de deslocamento.

ntile(n)

Retorna o ID do grupo ntile (de 1 a n, inclusive) em uma partição de janela ordenada.

percent_rank()

Retorna a classificação relativa (ou seja,

rank()

Retorna a classificação das linhas dentro de uma partição de janela.

row_number()

Retorna um número sequencial começando em 1 dentro de uma partição de janela.

Funções do gerador

Função

Descrição

explode(col)

Retorna uma nova linha para cada elemento na matriz ou mapa fornecido.

explode_outer(col)

Retorna uma nova linha para cada elemento na matriz ou mapa fornecido.

inline(col)

Transforma um array de structs em uma tabela.

inline_outer(col)

Transforma um array de structs em uma tabela.

posexplode(col)

Retorna uma nova linha para cada elemento com a posição especificada na matriz ou mapa fornecido.

posexplode_outer(col)

Retorna uma nova linha para cada elemento com a posição especificada na matriz ou mapa fornecido.

stack(*cols)

Separa col1, ..., colk em n linhas.

Funções de transformação de partição

Função

Descrição

partitioning.years(col)

Uma transformação para registros de data e hora e datas para particionar dados em anos.

partitioning.months(col)

Uma transformação para registros de data e hora e datas para particionar dados em meses.

partitioning.days(col)

Uma transformação para registros de data e hora e datas para particionar dados em dias.

partitioning.hours(col)

Uma transformação de timestamps para particionar dados em horas.

partitioning.bucket(numBuckets, col)

Uma transformação para qualquer tipo que particiona por um hash da coluna de entrada.

Funções geoespaciais H3 (Databricks)

Função

Descrição

h3_boundaryasgeojson(col)

Retorna o limite de uma célula H3 no formato GeoJSON.

h3_boundaryaswkb(col)

Retorna o limite de uma célula H3 no formato WKB.

h3_boundaryaswkt(col)

Retorna o limite de uma célula H3 no formato WKT.

h3_centerasgeojson(col)

Retorna o centro de uma célula H3 no formato GeoJSON.

h3_centeraswkb(col)

Retorna o centro de uma célula H3 no formato WKB.

h3_centeraswkt(col)

Retorna o centro de uma célula H3 no formato WKT.

h3_compact(col)

Compacta o conjunto de IDs de células H3 de entrada da melhor forma possível.

h3_coverash3(col1,col2)

Retorna uma matriz de IDs de células representados como números inteiros longos, correspondentes a hexágonos ou pentágonos da resolução especificada que cobrem minimamente a geografia linear ou areal de entrada.

h3_coverash3string(col1,col2)

Retorna uma matriz de IDs de células representados como strings, correspondentes a hexágonos ou pentágonos da resolução especificada que cobrem minimamente a geografia linear ou areal de entrada.

h3_distance(col1,col2)

Retorna a distância na grade entre dois IDs de células H3.

h3_h3tostring(col)

Converte um ID de célula H3 em uma string representando o ID da célula em formato hexadecimal.

h3_hexring(col1,col2)

Retorna uma matriz de IDs de células H3 que formam um anel hexagonal oco centrado na célula H3 de origem e que estão a uma distância da grade k da célula H3 de origem.

h3_ischildof(col1,col2)

Retorna True se o primeiro ID de célula H3 for filho do segundo ID de célula H3.

h3_ispentagon(col)

Retorna True se o ID da célula H3 de entrada representar um pentágono.

h3_isvalid(col)

Retorna True se a entrada representar um ID de célula H3 válido.

h3_kring(col1,col2)

Retorna os IDs das células H3 que estão a uma distância (da grade) k do ID da célula de origem.

h3_kringdistances(col1,col2)

Retorna todos os IDs de células H3 (representados como números inteiros longos ou strings) dentro de uma distância de grade k do ID da célula H3 de origem, juntamente com sua distância da célula H3 de origem.

h3_longlatash3(col1,col2,col3)

Retorna o ID da célula H3 (como um BIGINT) correspondente à longitude e latitude fornecidas na resolução especificada.

h3_longlatash3string(col1,col2,col3)

Retorna o ID da célula H3 (como uma string) correspondente à longitude e latitude fornecidas na resolução especificada.

h3_maxchild(col1,col2)

Retorna o filho do elemento com o maior valor na célula H3 de entrada, na resolução especificada.

h3_minchild(col1,col2)

Retorna o filho de menor valor da célula H3 de entrada na resolução especificada.

h3_pointash3(col1,col2)

Retorna o ID da célula H3 (como um BIGINT) correspondente ao ponto fornecido na resolução especificada.

h3_pointash3string(col1,col2)

Retorna o ID da célula H3 (como uma string) correspondente ao ponto fornecido na resolução especificada.

h3_polyfillash3(col1,col2)

Retorna uma matriz de IDs de células representados como números inteiros longos, correspondentes a hexágonos ou pentágonos da resolução especificada que estão contidos na área geográfica de entrada.

h3_polyfillash3string(col1,col2)

Retorna uma matriz de IDs de células representados como strings, correspondentes a hexágonos ou pentágonos da resolução especificada que estão contidos na área geográfica de entrada.

h3_resolution(col)

Retorna a resolução do ID da célula H3.

h3_stringtoh3(col)

Converte a representação em string do ID da célula H3 para sua representação em inteiro grande.

h3_tessellateaswkb(col1,col2)

Retorna um array de estruturas representando os chips que cobrem a geografia na resolução especificada.

h3_tochildren(col1,col2)

Retorna os IDs das células H3 filhas da célula H3 de entrada na resolução especificada.

h3_toparent(col1,col2)

Retorna o ID da célula H3 pai da célula H3 de entrada na resolução especificada.

h3_try_coverash3(col1,col2)

Retorna uma matriz de IDs de células representados como números inteiros longos, correspondentes a hexágonos ou pentágonos da resolução especificada que cobrem minimamente a geografia linear ou areal de entrada.

h3_try_coverash3string(col1,col2)

Retorna uma matriz de IDs de células representados como strings, correspondentes a hexágonos ou pentágonos da resolução especificada que cobrem minimamente a geografia linear ou areal de entrada.

h3_try_distance(col1,col2)

Retorna a distância na grade entre dois IDs de células H3 com a mesma resolução, ou None se a distância for indefinida.

h3_try_polyfillash3(col1,col2)

Retorna uma matriz de IDs de células representados como números inteiros longos, correspondentes a hexágonos ou pentágonos da resolução especificada que estão contidos na área geográfica de entrada.

h3_try_polyfillash3string(col1,col2)

Retorna uma matriz de IDs de células representados como strings, correspondentes a hexágonos ou pentágonos da resolução especificada que estão contidos na área geográfica de entrada.

h3_try_tessellateaswkb(col1,col2)

Retorna um array de estruturas representando os chips que cobrem a geografia na resolução especificada, ou nulo se a geometria for inválida.

h3_try_validate(col)

Retorna o valor de entrada se for uma célula H3 válida ou None caso contrário.

h3_uncompact(col1,col2)

Descompacta o conjunto de IDs de células H3 de entrada para a resolução especificada.

h3_validate(col)

Retorna o valor de entrada se for uma célula H3 válida ou emite um erro caso contrário.

Funções geoespaciais ST (Databricks)

Função

Descrição

st_addpoint(col1,col2,col3)

Adiciona um novo ponto à n-ésima posição na linha de entrada Geografia ou Geometria

st_area(col)

Retorna a área da geografia ou geometria de entrada.

st_asbinary(col1,col2)

Retorna o valor de Geografia ou Geometria de entrada no formato WKB.

st_asewkb(col1,col2)

Retorna o valor da geometria de entrada no formato EWKB.

st_asewkt(col)

Retorna o valor de Geografia ou Geometria de entrada no formato EWKT.

st_asgeojson(col)

Retorna o valor de Geografia ou Geometria de entrada no formato GeoJSON.

st_astext(col)

Retorna o valor de Geografia ou Geometria de entrada no formato WKT.

st_aswkb(col1,col2)

Retorna o valor de Geografia ou Geometria de entrada no formato WKB.

st_aswkt(col)

Retorna o valor de Geografia ou Geometria de entrada no formato WKT.

st_buffer(col1,col2)

Retorna o buffer da geometria de entrada usando o raio especificado.

st_centroid(col)

Retorna o centroide da geometria de entrada como uma geometria de ponto 2D.

st_concavehull(col1,col2,col3)

Retorna o casco côncavo da geometria de entrada como uma geometria usando a proporção de comprimento especificada.

st_contains(col1,col2)

Retorna True se a primeira geometria contiver a segunda geometria.

st_convexhull(col)

Retorna o casco convexo da geometria de entrada como uma geometria.

st_covers(col1,col2)

Retorna True se a primeira geometria cobrir a segunda geometria.

st_difference(col1,col2)

Retorna a diferença entre os conjuntos de pontos das duas geometrias de entrada como uma geometria 2D.

st_dimension(col)

Retorna a dimensão topológica da projeção 2D da geometria de entrada.

st_disjoint(col1,col2)

Retorna True se as duas geometrias forem disjuntas.

st_distance(col1,col2)

Retorna a distância cartesiana 2D entre as duas geometrias de entrada.

st_distancesphere(col1,col2)

Retorna a distância esférica (em metros) entre duas geometrias pontuais, medida em uma esfera cujo raio é o raio médio do elipsoide WGS84.

st_distancespheroid(col1,col2)

Retorna a distância geodésica (em metros) entre duas geometrias de pontos no elipsoide WGS84.

st_dwithin(col1,col2,col3)

Retorna True se a distância cartesiana 2D entre as duas geometrias de entrada for menor ou igual à distância de entrada.

st_endpoint(col)

Retorna o último ponto da linha de entrada ou None se ela não existir.

st_envelope(col)

Retorna a caixa delimitadora mínima (envelope) alinhada aos eixos cartesianos 2D da geometria não vazia de entrada, como uma geometria.

st_envelope_agg(col)

Retorna o envelope de todas as geometrias na coluna, ou None se a coluna tiver zero linhas, ou contiver apenas valores None

st_equals(col1,col2)

Retorna True se as duas geometrias forem geometricamente iguais.

st_exteriorring(col)

Retorna o anel externo (shell), como uma linha, do valor de Geografia ou Geometria de entrada que representa um polígono.

st_flipcoordinates(col)

Trocar as coordenadas X e Y da geometria de entrada

st_geogfromgeojson(col)

Analisa a descrição GeoJSON e retorna o valor Geography correspondente.

st_geogfromtext(col)

Analisa a descrição WKT e retorna o valor geográfico correspondente.

st_geogfromwkb(col)

Analisa a descrição WKB de entrada e retorna o valor Geográfico correspondente.

st_geogfromwkt(col)

Analisa a descrição WKT e retorna o valor geográfico correspondente.

st_geohash(col1,col2)

Retorna o geohash da geometriade entrada.

st_geometryn(col1,col2)

Retorna o n-ésimo elemento (baseado em 1) da geometria múltipla de entrada, ou None se ele não existir.

st_geometrytype(col)

Retorna o tipo do valor de entrada Geography ou Geometry como uma string.

st_geomfromewkb(col)

Analisa a descrição EWKB de entrada e retorna o valor de Geometria correspondente.

st_geomfromgeohash(col)

Retorna a caixa de grade geohash correspondente ao valor geohash de entrada como uma geometria poligonal 2D.

st_geomfromgeojson(col)

Analisa a descrição GeoJSON e retorna o valor de Geometria correspondente.

st_geomfromtext(col1,col2)

Analisa a descrição WKT e retorna o valor de Geometria correspondente.

st_geomfromwkb(col1,col2)

Analisa a descrição WKB de entrada e retorna o valor de Geometria correspondente.

st_geomfromwkt(col1,col2)

Analisa a descrição WKT e retorna o valor de Geometria correspondente.

st_intersection(col1,col2)

Retorna a interseção do conjunto de pontos das duas geometrias de entrada como uma geometria 2D.

st_intersects(col1,col2)

Retorna True se as duas geometrias se intersectarem.

st_isempty(col)

Retorna True se o valor de entrada Geography ou Geometry não contiver nenhum ponto não vazio.

st_isvalid(col)

Retorna True se a geometria de entrada for uma geometria válida no sentido OGC.

st_length(col)

Retorna o comprimento do valor geométrico ou geográfico de entrada.

st_m(col)

Retorna a coordenada M da geometria do ponto de entrada, ou None se a geometria do ponto de entrada estiver vazia ou se não possuir uma coordenada M.

st_makeline(col)

Retorna uma geometria de linha cujos pontos são os pontos não vazios das geometrias na matriz de geometrias de entrada, que devem ser pontos, linhas ou multipontos.

st_makepolygon(col1,col2)

Constrói um polígono a partir do limite externo de entrada e de uma matriz opcional de limites internos, representados como linhas fechadas.

st_multi(col)

Retorna o valor de Geografia ou Geometria de entrada como um valor geoespacial múltiplo equivalente, mantendo o SRID original.

st_ndims(col)

Retorna a dimensão da coordenada do valor de Geografia ou Geometria de entrada.

st_npoints(col)

Retorna o número de pontos não vazios no valor de Geografia ou Geometria de entrada.

st_numgeometries(col)

Retorna o número de geometrias na geometria de entrada.

st_perimeter(col)

Retorna o perímetro da geografia ou geometria de entrada.

st_point(col1,col2,col3)

Retorna uma geometria de ponto 2D com as coordenadas x e y e o valor SRID fornecidos.

st_pointfromgeohash(col)

Retorna o centro da caixa da grade geohash correspondente ao valor geohash de entrada como uma geometria de ponto 2D.

st_pointn(col1,col2)

Retorna o n-ésimo ponto da string de entrada (base 1), ou None se ele não existir.

st_removepoint(col1,col2)

Remove o n-ésimo ponto da linha de entrada Geografia ou Geometria

st_reverse(col)

Inverte a ordem dos vértices no valor de Geografia ou Geometria de entrada.

st_rotate(col1,col2)

Rotaciona a geometria de entrada em torno do eixo Z pelo ângulo de rotação fornecido (em radianos).

st_scale(col1,col2,col3,col4)

Dimensiona a geometria de entrada nas direções X, Y e Z (opcional) usando os fatores fornecidos.

st_setpoint(col1,col2,col3)

Define o n-ésimo ponto na linha de entrada Geografia ou Geometria

st_setsrid(col1,col2)

Retorna um novo valor de Geometria cujo SRID é o valor SRID especificado.

st_simplify(col1,col2)

Simplifica a geometria de entrada usando o algoritmo de Douglas-Peucker.

st_srid(col)

Retorna o SRID do valor geoespacial de entrada.

st_startpoint(col)

Retorna o primeiro ponto da string de entrada ou None se ela não existir.

st_touches(col1,col2)

Retorna True se as duas geometrias se tocarem.

st_transform(col1,col2)

Transforma as coordenadas X e Y da geometria de entrada para o sistema de referência de coordenadas (SRC) descrito pelo valor SRID fornecido.

st_translate(col1,col2,col3,col4)

Translada a geometria de entrada nas direções X, Y e Z (opcional) usando os deslocamentos fornecidos.

st_union(col1,col2)

Retorna a união dos conjuntos de pontos das duas geometrias de entrada como uma geometria 2D.

st_union_agg(col)

Retorna a união ponto a ponto de todas as geometrias na coluna, ou None se a coluna tiver zero linhas, ou contiver apenas valores None

st_within(col1,col2)

Retorna True se a primeira geometria estiver dentro da segunda geometria.

st_x(col)

Retorna a coordenada X da geometria do ponto de entrada ou None se a geometria do ponto de entrada estiver vazia.

st_xmax(col)

Retorna a coordenada X máxima da geometria de entrada ou None se a geometria de entrada estiver vazia.

st_xmin(col)

Retorna a coordenada X mínima da geometria de entrada ou None se a geometria de entrada estiver vazia.

st_y(col)

Retorna a coordenada Y da geometria do ponto de entrada ou None se a geometria do ponto de entrada estiver vazia.

st_ymax(col)

Retorna a coordenada Y máxima da geometria de entrada ou None se a geometria de entrada estiver vazia.

st_ymin(col)

Retorna a coordenada Y mínima da geometria de entrada ou None se a geometria de entrada estiver vazia.

st_z(col)

Retorna a coordenada Z da geometria do ponto de entrada, ou None se a geometria do ponto de entrada estiver vazia ou se não possuir uma coordenada Z.

st_zmax(col)

Retorna a coordenada Z máxima da geometria de entrada ou None se a geometria de entrada estiver vazia ou não contiver coordenadas Z.

st_zmin(col)

Retorna a coordenada Z mínima da geometria de entrada, ou None se a geometria de entrada estiver vazia ou não contiver coordenadas Z.

to_geography(col)

Analisa o valor de entrada BINÁRIO ou de string e retorna o valor Geográfico correspondente.

to_geometry(col)

Analisa o valor BINÁRIO ou a string de entrada e retorna o valor de Geometria correspondente.

try_to_geography(col)

Analisa o valor de entrada BINÁRIO ou de string e retorna o valor Geográfico correspondente, ou None se a entrada for inválida.

try_to_geometry(col)

Analisa o valor BINÁRIO ou a string de entrada e retorna o valor Geometry correspondente, ou None se a entrada for inválida.

funções CSV

Função

Descrição

from_csv(col, schema[, options])

Analisa uma coluna contendo strings CSV e a transforma em uma linha com o esquema especificado.

schema_of_csv(csv[, options])

Analisa uma string CSV e infere seu esquema no formato DDL.

to_csv(col[, options])

Converte uma coluna contendo um StructType em strings CSV .

funções JSON

Função

Descrição

from_json(col, schema[, options])

Analisa uma coluna contendo strings JSON e a converte em um MapType com StringType como tipo de chave, StructType ou ArrayType com o esquema especificado.

get_json_object(col, path)

Extrai um objeto JSON de uma string JSON com base no caminho JSON especificado e retorna a string JSON do objeto JSON extraído.

json_array_length(col)

Retorna o número de elementos no array JSON mais externo.

json_object_keys(col)

Retorna todas as chaves do objeto JSON mais externo como um array.

json_tuple(col, *fields)

Cria uma nova linha para uma coluna JSON de acordo com os nomes de campo fornecidos.

schema_of_json(json[, options])

Analisa uma string JSON e infere seu esquema no formato DDL.

to_json(col[, options])

Converte uma coluna que contém um StructType, ArrayType ou MapType em uma string JSON .

Funções variantes

Função

Descrição

is_variant_null(v)

Verifique se um valor variante é nulo.

parse_json(col)

Analisa uma coluna contendo strings JSON e a converte em um VariantType.

schema_of_variant(v)

Retorna o esquema no formato SQL de uma variante.

schema_of_variant_agg(v)

Retorna o esquema de mesclagem no formato SQL de uma coluna variante.

try_variant_get(v, path, targetType)

Extrai uma subvariante de v de acordo com o caminho e, em seguida, converte a subvariante para targetType.

variant_get(v, path, targetType)

Extrai uma subvariante de v de acordo com o caminho e, em seguida, converte a subvariante para targetType.

try_parse_json(col)

Analisa uma coluna contendo strings JSON e a converte em um VariantType.

to_variant_object(col)

Converte uma coluna contendo entradas aninhadas (array/mapa/estrutura) em variantes, onde mapas e estruturas são convertidos em objetos variantes que não são ordenados, ao contrário das estruturas SQL.

funções XML

Função

Descrição

from_xml(col, schema[, options])

Analisa uma coluna contendo strings XML e a converte em uma linha com o esquema especificado.

schema_of_xml(xml[, options])

Analisa uma string XML e infere seu esquema no formato DDL.

to_xml(col[, options])

Converte uma coluna contendo um StructType em uma string XML.

xpath(xml, path)

Retorna uma matriz de strings com os valores presentes nos nós do XML que correspondem à expressão XPath.

xpath_boolean(xml, path)

Retorna verdadeiro se a expressão XPath for avaliada como verdadeira ou se um nó correspondente for encontrado.

xpath_double(xml, path)

Retorna um valor do tipo double, sendo zero se nenhuma correspondência for encontrada, ou NaN se uma correspondência for encontrada, mas o valor não for numérico.

xpath_float(xml, path)

Retorna um valor float, sendo zero se nenhuma correspondência for encontrada, ou NaN se uma correspondência for encontrada, mas o valor não for numérico.

xpath_int(xml, path)

Retorna um valor inteiro, ou o valor zero se nenhuma correspondência for encontrada, ou se uma correspondência for encontrada, mas o valor não for numérico.

xpath_long(xml, path)

Retorna um valor inteiro longo, ou o valor zero se nenhuma correspondência for encontrada, ou se uma correspondência for encontrada, mas o valor não for numérico.

xpath_number(xml, path)

Retorna um valor do tipo double, sendo zero se nenhuma correspondência for encontrada, ou NaN se uma correspondência for encontrada, mas o valor não for numérico.

xpath_short(xml, path)

Retorna um valor inteiro curto, ou o valor zero se nenhuma correspondência for encontrada, ou se uma correspondência for encontrada, mas o valor não for numérico.

xpath_string(xml, path)

Retorna o conteúdo de texto do primeiro nó XML que corresponde à expressão XPath.

funções de URL

Função

Descrição

parse_url(url, partToExtract[, key])

Extrai uma parte específica de uma URL.

try_parse_url(url, partToExtract[, key])

Tente executar as operações parse_url , mas retorne um valor NULL em vez de gerar um erro se a análise não puder ser realizada.

url_decode(str)

Decodifica uma string codificada em URL no formato application/x-www-form-urlencoded para seu formato original.

url_encode(str)

Codifica uma string em uma string codificada em URL no formato 'application/x-www-form-urlencoded'.

try_url_decode(str)

Tente executar as operações url_decode , mas retorne um valor NULL em vez de gerar um erro se a decodificação não puder ser realizada.

Funções diversas

Função

Descrição

aes_decrypt(input, key[, mode, padding, aad])

Retorna o valor descriptografado da entrada usando AES no modo com preenchimento (padding).

aes_encrypt(input, key[, mode, padding, iv, aad])

Retorna um valor criptografado da entrada usando AES no modo fornecido com o preenchimento especificado.

assert_true(col[, errMsg])

Retorna nulo se a coluna de entrada for verdadeira; caso contrário, lança uma exceção com a mensagem de erro fornecida.

bitmap_bit_position(col)

Retorna a posição do bit para a coluna de entrada fornecida.

bitmap_bucket_number(col)

Retorna o número do bucket para a coluna de entrada fornecida.

bitmap_count(col)

Retorna o número de bits definidos no bitmap de entrada.

current_catalog()

Retorna o catálogo atual.

current_database()

Retorna o banco de dados atual.

current_schema()

Retorna o esquema atual.

current_user()

Retorna o usuário atual.

hll_sketch_estimate(col)

Retorna o número estimado de valores únicos, dada a representação binária de um Datasketches HllSketch.

hll_union(col1, col2[, allowDifferentLgConfigK])

Mesclar duas representações binárias de objetos Datasketches HllSketch, usando um objeto Datasketches Union.

input_file_block_length()

Retorna o comprimento do bloco que está sendo lido ou -1 se não estiver disponível.

input_file_block_start()

Retorna o deslocamento inicial do bloco que está sendo lido, ou -1 se não estiver disponível.

input_file_name()

Cria uma coluna de strings para o nome do arquivo da tarefa Spark atual.

java_method(*cols)

Chama um método com reflexão.

monotonically_increasing_id()

Uma coluna que gera números inteiros de 64 bits com incremento monotônico.

raise_error(errMsg)

Lança uma exceção com a mensagem de erro fornecida.

reflect(*cols)

Chama um método com reflexão.

session_user()

Retorna o nome de usuário do contexto de execução atual.

spark_partition_id()

Uma coluna para o ID da partição.

try_aes_decrypt(input, key[, mode, padding, aad])

Tente executar as operações aes_decrypt , mas retorne um valor NULL em vez de gerar um erro se a descriptografia não puder ser realizada.

try_reflect(*cols)

Tente executar uma operação reflect , mas retorne um valor NULL em vez de gerar um erro se o método de invocação lançar uma exceção.

typeof(col)

Retorna strings de tipo formatadas em DDL para o tipo de dados da entrada.

user()

Retorna o usuário atual.

version()

Retorna a versão do Spark.

Funções UDF, UDTF e UDT

Função

Descrição

call_udf(udfName, *cols)

Chamar uma função definida pelo usuário.

pandas_udf([f, returnType, functionType])

Cria uma função definida pelo usuário Pandas (também conhecida como função definida pelo usuário).

udf([f, returnType, useArrow])

Cria uma função definida pelo usuário (UDF).

udtf([cls, returnType, useArrow])

Cria uma função de tabela definida pelo usuário (UDTF).

unwrap_udt(col)

Desdobra a coluna do tipo de dados UDT em seu tipo subjacente.

Funções com valores em tabelas

Função

Descrição

TableValuedFunction.collations()

Obtenha todas as ordenações de strings do Spark SQL.

TableValuedFunction.explode(collection)

Retorna um DataFrame contendo uma nova linha para cada elemento na matriz ou mapa fornecido.

TableValuedFunction.explode_outer(collection)

Retorna um DataFrame contendo uma nova linha para cada elemento com a posição especificada na matriz ou mapa fornecido.

TableValuedFunction.inline(input)

Transforma um array de structs em uma tabela.

TableValuedFunction.inline_outer(input)

Transforma um array de structs em uma tabela.

TableValuedFunction.json_tuple(input, *fields)

Cria uma nova linha para uma coluna JSON de acordo com os nomes de campo fornecidos.

TableValuedFunction.posexplode(collection)

Retorna um DataFrame contendo uma nova linha para cada elemento com a posição especificada na matriz ou mapa fornecido.

TableValuedFunction.posexplode_outer(collection)

Retorna um DataFrame contendo uma nova linha para cada elemento com a posição especificada na matriz ou mapa fornecido.

TableValuedFunction.range(start[, end, ...])

Crie um DataFrame com uma única coluna PySpark.sql.types.LongType chamada id, contendo elementos em um intervalo de começar a terminar (exclusivo) com o valor o passo.

TableValuedFunction.sql_keywords()

Obtenha palavras-chave do Spark SQL.

TableValuedFunction.stack(n, *fields)

Separa col1, ..., colk em n linhas.

TableValuedFunction.variant_explode(input)

Separa um objeto/matriz variante em várias linhas contendo seus campos/elementos.

TableValuedFunction.variant_explode_outer(input)

Separa um objeto/matriz variante em várias linhas contendo seus campos/elementos.