Condividi tramite


Funzioni PySpark

Questa pagina fornisce un elenco delle funzioni SQL pySpark disponibili in Databricks con collegamenti alla documentazione di riferimento corrispondente.

Funzioni normali

Funzione Description
broadcast(df) Contrassegna un dataframe come sufficientemente piccolo da usare nei join broadcast.
call_function(funcName, *cols) Chiamare una funzione SQL.
col(col) Restituisce una colonna in base al nome della colonna specificata.
column(col) Restituisce una colonna in base al nome della colonna specificata.
lit(col) Crea una colonna di valore letterale.
expr(str) Esegue l'analisi della stringa di espressione per associarla alla colonna che rappresenta

Funzioni condizionali

Funzione Description
coalesce(*cols) Restituisce la prima colonna che non è Null.
ifnull(col1, col2) Restituisce col2 se col1 è null o col1 in caso contrario.
nanvl(col1, col2) Restituisce col1 se non è NaN o col2 se col1 è NaN.
nullif(col1, col2) Restituisce null se col1 è uguale a col2 o col1 in caso contrario.
nullifzero(col) Restituisce null se col è uguale a zero o col in caso contrario.
nvl(col1, col2) Restituisce col2 se col1 è null o col1 in caso contrario.
nvl2(col1, col2, col3) Restituisce col2 se col1 non è null o col3 in caso contrario.
when(condition, value) Valuta un elenco di condizioni e restituisce una tra più espressioni di risultato possibili.
zeroifnull(col) Restituisce zero se col è nullo, oppure col in caso contrario.

Funzioni di pattern matching

Funzione Description
equal_null(col1, col2) Restituisce lo stesso risultato dell'operatore EQUAL(=) per gli operandi non Null, ma restituisce true se entrambi sono null, false se uno di essi è Null.
ilike(str, pattern[, escapeChar]) Restituisce true se str corrisponde al criterio con caratteri di escape senza distinzione tra maiuscole e minuscole, null se gli argomenti sono null, false in caso contrario.
isnan(col) Espressione che restituisce true se la colonna è NaN.
isnotnull(col) Restituisce true se col non è null, altrimenti restituisce false.
isnull(col) Espressione che restituisce true se la colonna è Null.
like(str, pattern[, escapeChar]) Restituisce true se str corrisponde al pattern con escape, null se uno degli argomenti è null; altrimenti, restituisce false.
regexp(str, regexp) Restituisce true se str corrisponde alla regex Java, altrimenti restituisce false.
regexp_like(str, regexp) Restituisce true se str corrisponde alla regex Java, altrimenti restituisce false.
rlike(str, regexp) Restituisce true se str corrisponde alla regex Java, altrimenti restituisce false.

Funzioni di ordinamento

Funzione Description
asc(col) Restituisce un'espressione di ordinamento per la colonna di destinazione in ordine crescente.
asc_nulls_first(col) Restituisce un'espressione di ordinamento in base all'ordine crescente del nome di colonna specificato, con i valori NULL che precedono i valori non NULL.
asc_nulls_last(col) Restituisce un'espressione di ordinamento in base all'ordine crescente del nome della colonna specificata e i valori Null vengono visualizzati dopo i valori non Null.
desc(col) Restituisce un'espressione di ordinamento per la colonna di destinazione in ordine decrescente.
desc_nulls_first(col) Restituisce un'espressione di ordinamento in base all'ordine decrescente del nome di colonna specificato e i valori Null vengono visualizzati prima dei valori non Null.
desc_nulls_last(col) Restituisce un'espressione di ordinamento in base all'ordine decrescente del nome di colonna specificato e i valori Null vengono visualizzati dopo valori non Null.

Funzioni matematiche

Funzione Description
abs(col) Calcola il valore assoluto della colonna o dell'espressione specificata.
acos(col) Calcola il coseno inverso (noto anche come arcocosine) della colonna o dell'espressione specificata.
acosh(col) Calcola il coseno iperbolico inverso (noto anche come arcosh) della colonna o dell'espressione specificata.
asin(col) Calcola il seno inverso della colonna di input.
asinh(col) Calcola il seno iperbolico inverso della colonna di input.
atan(col) Calcolare la tangente inversa della colonna di input.
atan2(col1, col2) Calcolare l'angolo in radianti tra l'asse x positivo di un piano e il punto specificato dalle coordinate
atanh(col) Calcola la tangente iperbolica inversa della colonna di input.
bin(col) Restituisce la rappresentazione di stringa del valore binario della colonna specificata.
bround(col[, scale]) Arrotondare il valore specificato al numero di posizioni decimali indicato usando la modalità di arrotondamento HALF_EVEN se la scala >= 0 o alla parte intera quando la scala < 0.
cbrt(col) Calcola la radice del cubo del valore specificato.
ceil(col[, scale]) Calcola il limite massimo del valore specificato.
ceiling(col[, scale]) Calcola il limite massimo del valore specificato.
conv(col, fromBase, toBase) Convertire un numero in una colonna di stringhe da una base numerica a un'altra.
cos(col) Calcola il coseno della colonna di input.
cosh(col) Calcola il coseno iperbolico della colonna di input.
cot(col) Calcola la cotangente della colonna di input.
csc(col) Calcola la cosecante della colonna di input.
degrees(col) Converte un angolo misurato in radianti in un angolo approssimativamente equivalente misurato in gradi.
e() Restituisce il numero di Eulero.
exp(col) Calcola l'esponenziale del valore specificato.
expm1(col) Calcola l'esponenziale del valore specificato meno uno.
factorial(col) Calcola il fattoriale del valore specificato.
floor(col[, scale]) Calcola il piano del valore specificato.
greatest(*cols) Restituisce il valore massimo dell'elenco di nomi di colonna, ignorando i valori Null.
hex(col) Calcola il valore esadecimale della colonna specificata, che può essere StringType, BinaryType, IntegerType o LongType.
hypot(col1, col2) Calcola sqrt(a^2 + b^2) senza overflow intermedio o underflow.
least(*cols) Restituisce il valore minimo dell'elenco di nomi di colonna, ignorando i valori Null.
ln(col) Restituisce il logaritmo naturale dell'argomento.
log(arg1[, arg2]) Restituisce il logaritmo in base al primo argomento del secondo argomento.
log10(col) Calcola il logaritmo del valore specificato in Base 10.
log1p(col) Calcola il logaritmo naturale del valore specificato più uno.
log2(col) Restituisce il logaritmo di base 2 dell'argomento.
negate(col) Restituisce il valore negativo.
negative(col) Restituisce il valore negativo.
pi() Restituisce Pi.
pmod(dividend, divisor) Restituisce il valore positivo del divisore dividend mod.
positive(col) Restituisce il valore .
pow(col1, col2) Restituisce il valore del primo argomento elevato alla potenza del secondo argomento.
power(col1, col2) Restituisce il valore del primo argomento elevato alla potenza del secondo argomento.
radians(col) Converte un angolo misurato in gradi in un angolo approssimativamente equivalente misurato in radianti.
rand([seed]) Genera una colonna casuale con campioni indipendenti e distribuiti in modo identico (i.i.d.) distribuiti in modo uniforme in [0.0, 1.0).
randn([seed]) Genera una colonna casuale con campioni indipendenti e identicamente distribuiti (i.i.d.) dalla distribuzione normale standard.
rint(col) Restituisce il valore double più vicino al valore dell'argomento ed equivalente a un numero intero.
round(col[, scale]) Arrotondare il valore specificato al numero di posizioni decimali usando la modalità di arrotondamento HALF_UP se la scala >= 0 o alla parte intera quando la scala < 0.
sec(col) Calcola la secante della colonna di ingresso.
sign(col) Calcola il segno del valore specificato.
signum(col) Calcola il segno del valore specificato.
sin(col) Calcola il seno della colonna di dati di input.
sinh(col) Calcola il seno iperbolico della colonna di input.
sqrt(col) Calcola la radice quadrata del valore float specificato.
tan(col) Calcola la tangente della colonna di input.
tanh(col) Calcola la tangente iperbolica della colonna di input.
try_add(left, right) Restituisce la somma di sinistra e destra e il risultato è Null in caso di overflow.
try_divide(left, right) Calcola il quoziente tra dividendo e divisore.
try_mod(left, right) Restituisce il resto dopo dividendo/divisore.
try_multiply(left, right) Restituisce il valore di sinistra moltiplicato per il valore di destra e il risultato è null in caso di overflow.
try_subtract(left, right) Restituisce il valore ottenuto sottraendo il destro dal sinistro e il risultato diventa null in caso di overflow.
unhex(col) Inverso di esadecimale.
uniform(min, max[, seed]) Restituisce un valore casuale con valori indipendenti e distribuiti in modo identico (i.i.d.) con l'intervallo di numeri specificato.
width_bucket(v, min, max, numBucket) Restituisce il numero di bucket in cui il valore di questa espressione cadrebbe dopo la valutazione.

Funzioni stringa

Funzione Description
ascii(col) Calcola il valore numerico del primo carattere della colonna stringa.
base64(col) Calcola la codifica BASE64 di una colonna binaria e la restituisce come colonna stringa.
bit_length(col) Calcola la lunghezza del bit per la colonna stringa specificata.
btrim(str[, trim]) Rimuovere i caratteri di spaziatura iniziali e finali da str.
char(col) Restituisce il carattere ASCII avente l'equivalente binario di col.
char_length(str) Restituisce la lunghezza del carattere dei dati stringa o il numero di byte di dati binari.
character_length(str) Restituisce la lunghezza del carattere dei dati stringa o il numero di byte di dati binari.
collate(col, collation) Contrassegna una determinata colonna con le regole di confronto specificate.
collation(col) Restituisce il nome della collatione di una determinata colonna.
concat_ws(sep, *cols) Concatena più colonne di stringhe di input in un'unica colonna di stringhe, utilizzando il separatore fornito.
contains(left, right) Restituisce un valore booleano.
decode(col, charset) Calcola il primo argomento in una stringa da un file binario usando il set di caratteri fornito (uno di US-ASCII, ISO-8859-1UTF-8, UTF-16BEUTF-16LEUTF-16, ). UTF-32
elt(*inputs) Restituisce l'input n-th, ad esempio restituisce input2 quando n è 2.
encode(col, charset) Calcola il primo argomento in un file binario da una stringa usando il set di caratteri fornito (uno di US-ASCII, ISO-8859-1UTF-8, UTF-16BEUTF-16LE, , UTF-16UTF-32).
endswith(str, suffix) Restituisce un valore booleano.
find_in_set(str, str_array) Restituisce l'indice (in base 1) della stringa specificata (str) nell'elenco delimitato da virgole (strArray).
format_number(col, d) Formatta il numero X in un formato simile a #,--#,--#.--, arrotondato a d cifre decimali con la modalità di arrotondamento HALF_EVEN e restituisce il risultato come stringa.
format_string(format, *cols) Formatta gli argomenti in stile printf e restituisce il risultato come colonna stringa.
initcap(col) Tradurre la prima lettera di ogni parola in lettere maiuscole nella frase.
instr(str, substr) Individuare la posizione della prima occorrenza della colonna 'substr' nella stringa fornita.
is_valid_utf8(str) Restituisce true se l'input è una stringa UTF-8 valida, in caso contrario restituisce false.
lcase(str) Restituisce str con tutti i caratteri modificati in minuscolo.
left(str, len) Restituisce i caratteri len più a sinistra (len può essere di tipo stringa) della stringa str, se len è minore o uguale a 0, il risultato è una stringa vuota.
length(col) Calcola la lunghezza del carattere dei dati stringa o il numero di byte di dati binari.
levenshtein(left, right[, threshold]) Calcola la distanza Levenshtein delle due stringhe date.
locate(substr, str[, pos]) Individuare la posizione della prima occorrenza della sottostringa in una colonna di tipo stringa, dopo la posizione pos.
lower(col) Converte un'espressione stringa in lettere minuscole.
lpad(col, len, pad) Inserisci spazi a sinistra della colonna stringa per raggiungere la larghezza len utilizzando il carattere di riempimento.
ltrim(col[, trim]) Rimuovere gli spazi dall'estremità sinistra del valore di stringa specificato.
make_valid_utf8(str) Restituisce una nuova stringa in cui tutte le sequenze di byte UTF-8 non valide, se presenti, vengono sostituite dal carattere di sostituzione Unicode (U+FFFD).
mask(col[, upperChar, lowerChar, digitChar, ...]) Maschera il valore stringa specificato.
octet_length(col) Calcola la lunghezza dei byte per la colonna stringa specificata.
overlay(src, replace, pos[, len]) Sovrapponi la parte specificata di src con replace, a partire dalla posizione del byte pos di src e procedendo per len byte.
position(substr, str[, start]) Restituisce la posizione della prima occorrenza della sottostringa in str dopo l'inizio della posizione.
printf(format, *cols) Formatta gli argomenti in stile printf e restituisce il risultato come colonna stringa.
randstr(length[, seed]) Restituisce una stringa della lunghezza specificata i cui caratteri vengono scelti in modo uniforme in modo casuale dal pool di caratteri seguente: 0-9, a-z, A-Z.
regexp_count(str, regexp) Restituisce un conteggio del numero di volte in cui il regexp del modello regex Java viene confrontato nella stringa str.
regexp_extract(str, pattern, idx) Estrarre un gruppo specifico corrispondente al regexp regex Java dalla colonna stringa specificata.
regexp_extract_all(str, regexp[, idx]) Estrarre tutte le stringhe nella variabile str che corrispondono all'espressione regolare Java e corrispondenti all'indice del gruppo specificato nel regex.
regexp_instr(str, regexp[, idx]) Restituisce la posizione della prima sottostringa nello str che corrisponde all'espressione regolare regexp Java e corrispondente all'indice del gruppo regex.
regexp_replace(string, pattern, replacement) Sostituire tutte le sottostringhe del valore stringa specificato che corrispondono a regexp con sostituzione.
regexp_substr(str, regexp) Restituisce la prima sottostringa che corrisponde alla regexp regex Java all'interno della stringa str.
repeat(col, n) Ripete una colonna stringa n volte e la restituisce come nuova colonna stringa.
replace(src, search[, replace]) Sostituisce tutte le occorrenze della ricerca con replace.
right(str, len) Restituisce i caratteri len più a destra (len può essere di tipo stringa) dalla stringa str, se len è minore o uguale a 0, il risultato è una stringa vuota.
rpad(col, len, pad) Padroneggia a destra la colonna di stringhe fino alla larghezza len con il riempimento.
rtrim(col[, trim]) Tagliare gli spazi dall'estremità destra per il valore stringa specificato.
sentences(string[, language, country]) Suddivide una stringa in matrici di frasi, in cui ogni frase è una matrice di parole.
soundex(col) Restituisce la codifica SoundEx per una stringa
split(str, pattern[, limit]) Suddivide str sulla base delle corrispondenze del modello specificato.
split_part(src, delimiter, partNum) Divide str per delimitatore e restituisce parte richiesta della divisione (basata su 1).
startswith(str, prefix) Restituisce un valore booleano.
substr(str, pos[, len]) Restituisce la sottostringa di str che inizia da pos ed è di lunghezza len o la sezione della matrice di byte che inizia a pos e è di lunghezza len.
substring(str, pos, len) La sottostringa inizia da pos ed è di lunghezza len quando str è di tipo String o restituisce la sezione della matrice di byte che inizia a pos in byte ed è di lunghezza len quando str è di tipo Binary.
substring_index(str, delim, count) Restituisce la sottostringa dalla stringa str prima di un numero specifico di occorrenze del delimitatore delim.
to_binary(col[, format]) Converte la colonna di input in un valore binario in base al formato fornito.
to_char(col, format) Convertire col in una stringa in base al formato.
to_number(col, format) Convertire la stringa 'col' in un numero in base al formato della stringa 'format'.
to_varchar(col, format) Convertire col in una stringa in base al formato.
translate(srcCol, matching, replace) Traduci ogni carattere in srcCol con un carattere corrispondente.
trim(col[, trim]) Tagliare gli spazi da entrambe le estremità per la colonna di stringhe specificata.
try_to_binary(col[, format]) Provare a eseguire l'operazione to_binary , ma restituire un valore NULL anziché generare un errore se non è possibile eseguire la conversione.
try_to_number(col, format) Convertire la stringa col in un numero in base al formato stringa format.
try_validate_utf8(str) Restituisce il valore di input se corrisponde a una stringa UTF-8 valida o NULL in caso contrario.
ucase(str) Restituisce str con tutti i caratteri modificati in maiuscolo.
unbase64(col) Decodifica una colonna stringa con codifica BASE64 e la restituisce come colonna binaria.
upper(col) Converte un'espressione stringa in lettere maiuscole.
validate_utf8(str) Restituisce il valore di input se corrisponde a una stringa UTF-8 valida o genera un errore in caso contrario.

Funzioni bit per bit

Funzione Description
bit_count(col) Restituisce il numero di bit impostati nell'argomento expr come intero senza segno a 64 bit o NULL se l'argomento è NULL.
bit_get(col, pos) Restituisce il valore del bit (0 o 1) nella posizione specificata.
bitwise_not(col) Non calcola bit per bit.
getbit(col, pos) Restituisce il valore del bit (0 o 1) nella posizione specificata.
shiftleft(col, numBits) Spostare il valore specificato a sinistra.
shiftright(col, numBits) (Con segno) spostare il valore specificato a destra.
shiftrightunsigned(col, numBits) Spostamento senza segno a destra del valore specificato.

Funzioni di data/ora

Funzione Description
add_months(start, months) Restituisce la data che è mesi mesi dopo la data di inizio.
convert_timezone(sourceTz, targetTz, sourceTs) Converte il timestamp senza fuso orario da sourceTz a targetTz.
curdate() Restituisce la data corrente all'inizio della valutazione della query come colonna DateType.
current_date() Restituisce la data corrente all'inizio della valutazione della query come colonna DateType.
current_timestamp() Restituisce il timestamp corrente all'inizio della valutazione della query come colonna di tipo TimestampType.
current_timezone() Restituisce il fuso orario locale della sessione corrente.
date_add(start, days) Restituisce la data di giorni dopo l'inizio.
date_diff(end, start) Restituisce il numero di giorni dall'inizio alla fine.
date_format(date, format) Converte una data/timestamp/stringa in un valore di stringa nel formato specificato dal formato di data specificato dal secondo argomento.
date_from_unix_date(days) Crea data dal numero di giorni dal 1970-01-01.
date_part(field, source) Estrae una parte della data, del timestamp o dell'intervallo.
date_sub(start, days) Restituisce la data che è giorni giorni prima della data di inizio.
date_trunc(format, timestamp) Restituisce il timestamp troncato all'unità definita dal formato.
dateadd(start, days) Restituisce la data di giorni dopo l'inizio.
datediff(end, start) Restituisce il numero di giorni dall'inizio alla fine.
datepart(field, source) Estrae una parte della data, del timestamp o dell'intervallo.
day(col) Estrarre il giorno del mese da una data o un timestamp specificato come intero.
dayname(col) Restituisce il nome del giorno abbreviato di tre lettere dalla data fornita.
dayofmonth(col) Estrarre il giorno del mese da una data o un timestamp specificato come intero.
dayofweek(col) Estrarre il giorno della settimana di una data o di un timestamp specificato come integer.
dayofyear(col) Estrai il giorno dell'anno da una data o timestamp come numero intero.
extract(field, source) Estrae una parte della data, del timestamp o dell'intervallo.
from_unixtime(timestamp[, format]) Converte il numero di secondi dall'epoca unix (1970-01-01 00:00:00 UTC) a una stringa che rappresenta il timestamp di quel momento nel fuso orario di sistema corrente nel formato specificato.
from_utc_timestamp(timestamp, tz) Si tratta di una funzione comune per i database che supportano TIMESTAMP WITHOUT TIMEZONE.
hour(col) Estrarre le ore di un timestamp specificato come integer.
last_day(date) Restituisce l'ultimo giorno del mese a cui appartiene la data specificata.
localtimestamp() Restituisce il timestamp corrente senza fuso orario all'inizio della valutazione della query come timestamp senza colonna del fuso orario.
make_date(year, month, day) Restituisce una colonna con una data compilata dalle colonne anno, mese e giorno.
make_dt_interval([days, hours, mins, secs]) Impostare la durata di DayTimeIntervalType da giorni, ore, minuti e sec.
make_interval([years, months, weeks, days, ...]) Impostare l'intervallo tra anni, mesi, settimane, giorni, ore, minuti e sec.
make_timestamp(years, months, days, hours, ...) Creare un timestamp da anni, mesi, giorni, ore, minuti, secondi e campo del fuso orario.
make_timestamp_ltz(years, months, days, ...) Creare il timestamp corrente con fuso orario locale da anni, mesi, giorni, ore, minuti, sec e campi fuso orario.
make_timestamp_ntz(years, months, days, ...) Creare data/ora locale da anni, mesi, giorni, ore, minuti, sec campi.
make_ym_interval([years, months]) Creare un intervallo anno-mese partendo da anni e mesi.
minute(col) Estrarre i minuti di un timestamp dato come intero.
month(col) Estrarre il mese di un determinato valore di data/timestamp come numero intero.
monthname(col) Restituisce il nome del mese in versione abbreviata di tre lettere dalla data specificata.
months_between(date1, date2[, roundOff]) Restituisce il numero di mesi tra date1 e date2.
next_day(date, dayOfWeek) Restituisce la prima data successiva al valore della colonna date in base all'argomento del secondo giorno della settimana.
now() Restituisce il timestamp corrente all'inizio dell'elaborazione della query.
quarter(col) Estrarre il trimestre di una data o timestamp specifico come intero.
second(col) Estrarre i secondi di una data specificata come integer.
session_window(timeColumn, gapDuration) Genera la finestra della sessione in base a un timestamp che specifica la colonna.
timestamp_add(unit, quantity, ts) Ottiene la differenza tra i timestamp nelle unità specificate troncando la parte frazionaria.
timestamp_diff(unit, start, end) Ottiene la differenza tra i timestamp nelle unità specificate troncando la parte frazionaria.
timestamp_micros(col) Crea un timestamp dal numero di microsecondi trascorsi dall'epoca UTC.
timestamp_millis(col) Crea il timestamp dal numero di millisecondi trascorsi dall'epoca UTC.
timestamp_seconds(col) Converte il numero di secondi dall'epoca Unix (1970-01-01T00:00:00Z) in un timestamp.
to_date(col[, format]) Converte una colonna in pyspark.sql.types.DateType utilizzando il formato specificato facoltativamente.
to_timestamp(col[, format]) Converte una colonna in pyspark.sql.types.TimestampType usando il formato specificato facoltativamente.
to_timestamp_ltz(timestamp[, format]) Trasforma il timestamp con il formato specificato in un timestamp con fuso orario.
to_timestamp_ntz(timestamp[, format]) Analizza il timestamp nel formato e lo converte in un timestamp senza fuso orario.
to_unix_timestamp(timestamp[, format]) Restituisce il timestamp UNIX dell'ora specificata.
to_utc_timestamp(timestamp, tz) Si tratta di una funzione comune per i database che supportano TIMESTAMP WITHOUT TIMEZONE.
trunc(date, format) Restituisce la data troncata all'unità specificata dal formato.
try_make_interval([years, months, weeks, ...]) Provare a eseguire un'operazione make_interval , ma restituire un valore NULL anziché generare un errore se non è possibile creare l'intervallo.
try_make_timestamp(years, months, days, ...) Cerca di creare un timestamp da anni, mesi, giorni, ore, minuti, secondi e campo del fuso orario.
try_make_timestamp_ltz(years, months, days, ...) Provare a creare il timestamp corrente con il fuso orario locale usando anni, mesi, giorni, ore, minuti, secondi e i campi del fuso orario.
try_make_timestamp_ntz(years, months, days, ...) Provare a creare campi di data e ora locale da anni, mesi, giorni, ore, minuti, secondi.
try_to_timestamp(col[, format]) Analizza la colonna utilizzando il formato per convertirla in un timestamp.
unix_date(col) Restituisce il numero di giorni dal 1970-01-01.
unix_micros(col) Restituisce il numero di microsecondi dal 1970-01-01 00:00:00 UTC.
unix_millis(col) Restituisce il numero di millisecondi dal 1970-01-01 00:00:00 UTC.
unix_seconds(col) Restituisce il numero di secondi dal 1970-01-01 00:00:00 UTC.
unix_timestamp([timestamp, format]) Convertire la stringa temporale con il pattern specificato ('aaaa-MM-gg HH:mm:ss', per impostazione predefinita) in un timestamp Unix (in secondi), utilizzando il fuso orario e la localizzazione predefiniti, restituisce null se l'operazione non riesce.
weekday(col) Restituisce il giorno della settimana per date/timestamp (0 = lunedì, 1 = martedì, ..., 6 = domenica).
weekofyear(col) Estrarre il numero di settimana di una data specificata come numero intero.
window(timeColumn, windowDuration[, ...]) Suddividere le righe in uno o più intervalli temporali utilizzando un timestamp che determina la colonna.
window_time(windowColumn) Calcola l'ora dell'evento da una colonna della finestra.
year(col) Estrarre l'anno di un certo valore di data/timestamp come intero.

Funzioni hash

Funzione Description
crc32(col) Calcola il valore di controllo della ridondanza ciclica (CRC32) di una colonna binaria e restituisce il risultato come un bigint.
hash(*cols) Calcola il codice hash delle colonne specificate e restituisce il risultato come colonna int.
md5(col) Calcola il digest MD5 e restituisce il valore come stringa esadecimale di 32 caratteri.
sha(col) Restituisce un valore hash SHA1 come stringa esadecimale della colonna.
sha1(col) Restituisce il risultato della stringa esadecimale di SHA-1.
sha2(col, numBits) Restituisce il risultato della stringa esadecimale della famiglia di funzioni hash SHA-2 (SHA-224, SHA-256, SHA-384 e SHA-512).
xxhash64(*cols) Calcola il codice hash delle colonne specificate usando la variante a 64 bit dell'algoritmo xxHash e restituisce il risultato come colonna lunga.

Funzioni di raccolta

Funzione Description
aggregate(col, initialValue, merge[, finish]) Applica un operatore binario a uno stato iniziale e a tutti gli elementi della matrice e lo riduce a un singolo stato.
array_sort(col[, comparator]) Ordina la matrice di input in ordine crescente.
cardinality(col) Restituisce la lunghezza della matrice o della mappa archiviata nella colonna.
concat(*cols) Concatena più colonne di input in una singola colonna.
element_at(col, extraction) Restituisce l'elemento della matrice in corrispondenza dell'indice specificato (in base 1).
exists(col, f) Restituisce un valore che indica se un predicato contiene uno o più elementi nella matrice.
filter(col, f) Restituisce un array di elementi per i quali un predicato è soddisfatto in un determinato array.
forall(col, f) Restituisce se un predicato si verifica per ogni elemento dell'array.
map_filter(col, f) Restituisce una nuova colonna della mappa le cui coppie chiave-valore soddisfano una determinata funzione di predicato.
map_zip_with(col1, col2, f) Unisce due mappe date in una singola mappa applicando una funzione alle coppie chiave-valore.
reduce(col, initialValue, merge[, finish]) Applica un operatore binario a uno stato iniziale e a tutti gli elementi della matrice e lo riduce a un singolo stato.
reverse(col) Restituisce una stringa invertita o una matrice con elementi in ordine inverso.
size(col) Restituisce la lunghezza della matrice o della mappa archiviata nella colonna.
transform(col, f) Restituisce una matrice di elementi dopo aver applicato una trasformazione a ogni elemento nella matrice di input.
transform_keys(col, f) Applica una funzione a ogni coppia chiave-valore in una mappa e restituisce una mappa con i risultati di tali applicazioni come nuove chiavi per le coppie.
transform_values(col, f) Applica una funzione a ogni coppia chiave-valore in una mappa e restituisce una mappa con i risultati di tali applicazioni come nuovi valori per le coppie.
try_element_at(col, extraction) Restituisce l'elemento dell'array all'indice specificato (basato su 1).
zip_with(left, right, f) Unire due matrici date, a livello di elemento, in una singola matrice usando una funzione.

Funzioni di array

Funzione Description
array(*cols) Crea una nuova colonna array dalle colonne di input o dai nomi delle colonne.
array_append(col, value) Restituisce una nuova colonna di matrice aggiungendo un valore alla matrice esistente.
array_compact(col) Rimuove i valori Null dalla matrice.
array_contains(col, value) Restituisce un valore booleano che indica se la matrice contiene il valore specificato: null se la matrice è null, true se la matrice contiene il valore specificato e false in caso contrario.
array_distinct(col) Rimuove i valori duplicati dalla matrice.
array_except(col1, col2) Restituisce una nuova matrice contenente gli elementi presenti in col1 ma non in col2, senza duplicati.
array_insert(arr, pos, value) Inserisce un elemento in una determinata matrice in corrispondenza di un indice di matrice specificato.
array_intersect(col1, col2) Restituisce una nuova matrice contenente l'intersezione degli elementi in col1 e col2, senza duplicati.
array_join(col, delimiter[, null_replacement]) Restituisce una colonna di stringhe concatenando gli elementi della colonna dell'array di input utilizzando il delimitatore.
array_max(col) Restituisce il valore massimo della matrice.
array_min(col) Restituisce il valore minimo della matrice.
array_position(col, value) Individua la posizione della prima occorrenza del valore specificato nella matrice specificata.
array_prepend(col, value) Restituisce una matrice contenente l'elemento specificato come primo elemento e il resto degli elementi della matrice originale.
array_remove(col, element) Rimuovere tutti gli elementi uguali all'elemento dalla matrice specificata.
array_repeat(col, count) Crea un array contenente una colonna ripetuta per un numero specificato di volte.
array_size(col) Restituisce il numero totale di elementi nella matrice.
array_union(col1, col2) Restituisce una nuova matrice contenente l'unione di elementi in col1 e col2, senza duplicati.
arrays_overlap(a1, a2) Restituisce una colonna booleana che indica se le matrici di input hanno elementi non Null comuni, restituendo true se lo fanno, null se le matrici non contengono elementi comuni ma non sono vuoti e almeno uno di essi contiene un elemento Null e false in caso contrario.
arrays_zip(*cols) Restituisce una matrice unita di struct in cui lo struct N-th contiene tutti i valori N-th delle matrici di input.
flatten(col) Crea una singola matrice da una matrice di matrici.
get(col, index) Restituisce l'elemento di una matrice in corrispondenza dell'indice (in base 0) specificato.
sequence(start, stop[, step]) Generare una sequenza di numeri interi dall'inizio alla fine, incrementando di un passo.
shuffle(col[, seed]) Genera una permutazione casuale della matrice specificata.
slice(x, start, length) Restituisce una nuova colonna di matrice sezionando la colonna della matrice di input da un indice iniziale a una lunghezza specifica.
sort_array(col[, asc]) Ordina la matrice di input in ordine crescente o decrescente in base all'ordinamento naturale degli elementi della matrice.

Funzioni struct

Funzione Description
named_struct(*cols) Crea uno struct con i nomi e i valori dei campi specificati.
struct(*cols) Crea una nuova colonna struct.

Funzioni di mappatura

Funzione Description
create_map(*cols) Crea una nuova colonna mappa a partire da un numero pari di colonne di ingresso o riferimenti a colonne.
map_concat(*cols) Restituisce l'unione di tutte le mappe indicate.
map_contains_key(col, value) Restituisce vero se la mappa contiene la chiave.
map_entries(col) Restituisce una matrice non ordinata di tutte le voci nella mappa specificata.
map_from_arrays(col1, col2) Crea una nuova mappa da due matrici.
map_from_entries(col) Trasforma una matrice di voci di coppie chiave-valore (struct con due campi) in una mappa.
map_keys(col) Restituisce una matrice non ordinata contenente le chiavi della mappa.
map_values(col) Restituisce una matrice non ordinata contenente i valori della mappa.
str_to_map(text[, pairDelim, keyValueDelim]) Converte una stringa in una mappa dopo aver suddiviso il testo in coppie chiave/valore usando delimitatori.

Funzioni di aggregazione

Funzione Description
any_value(col[, ignoreNulls]) Restituisce un valore di col per un gruppo di righe.
approx_count_distinct(col[, rsd]) Restituisce una nuova colonna, che stima il numero approssimativo di elementi distinti in una colonna specificata o in un gruppo di colonne.
approx_percentile(col, percentage[, accuracy]) Restituisce il percentile approssimativo della colonna numerica col, ovvero il valore più piccolo nei valori ordinati di col (ordinati dal minimo al massimo), tale che non più della percentuale dei valori di col sia minore o uguale a quel valore.
array_agg(col) Restituisce un elenco di oggetti con duplicati.
avg(col) Restituisce la media dei valori in un gruppo.
bit_and(col) Restituisce l'operazione AND bitwise di tutti i valori di input non null oppure null se nessuno.
bit_or(col) Restituisce l'OR bit per bit di tutti i valori di input non Null o Null se nessuno.
bit_xor(col) Restituisce l'XOR bit per bit di tutti i valori di input non Null o Null se non è presente alcun valore.
bitmap_construct_agg(col) Restituisce una bitmap con le posizioni dei bit impostati da tutti i valori della colonna di input.
bitmap_or_agg(col) Restituisce una bitmap che rappresenta l'OR bit per bit di tutte le bitmap della colonna di input.
bool_and(col) Restituisce true se tutti i valori di col sono true.
bool_or(col) Restituisce 'true' se almeno uno dei valori della colonna è 'true'.
collect_list(col) Raccoglie i valori di una colonna in un elenco, mantiene i duplicati e restituisce questo elenco di oggetti.
collect_set(col) Raccoglie i valori da una colonna in un set, eliminando i duplicati e restituisce questo set di oggetti.
corr(col1, col2) Restituisce una nuova colonna per il coefficiente di correlazione di Pearson per col1 e col2.
count(col) Consente di restituire il numero di elementi di un gruppo.
count_distinct(col, *cols) Restituisce una nuova colonna per un conteggio distinto di colonna o colonne.
count_if(col) Restituisce il numero di valori TRUE per la colonna.
count_min_sketch(col, eps, confidence[, seed]) Restituisce uno schizzo count-min di una colonna con l'esp, la confidenza e il valore di inizializzazione specificati.
covar_pop(col1, col2) Restituisce una nuova colonna per la covarianza campionaria di col1 e col2.
covar_samp(col1, col2) Restituisce una nuova colonna per la covarianza di esempio di col1 e col2.
every(col) Restituisce true se tutti i valori di col sono true.
first(col[, ignorenulls]) Restituisce il primo valore di un gruppo.
first_value(col[, ignoreNulls]) Restituisce il primo valore di col per un gruppo di righe.
grouping(col) Indica se una colonna specificata in un GROUP BY elenco è aggregata o meno, restituisce 1 per aggregato o 0 per non aggregato nel set di risultati.
grouping_id(*cols) Restituisce il livello di raggruppamento, uguale a
histogram_numeric(col, nBins) Calcola un istogramma in 'col' numerico usando bin nb.
hll_sketch_agg(col[, lgConfigK]) Restituisce la rappresentazione binaria aggiornabile di Datasketches HllSketch configurato con l'oggetto arg lgConfigK.
hll_union_agg(col[, allowDifferentLgConfigK]) Restituisce la rappresentazione binaria aggiornabile di Datasketches HllSketch, generata unendo le istanze di Datasketches HllSketch create in precedenza tramite un'istanza di Union Datasketches.
kurtosis(col) Restituisce la curtosi dei valori in un gruppo.
last(col[, ignorenulls]) Restituisce l'ultimo valore di un gruppo.
last_value(col[, ignoreNulls]) Restituisce l'ultimo valore di col per un gruppo di righe.
listagg(col[, delimiter]) Restituisce la concatenazione di valori di input non Null, separati dal delimitatore.
listagg_distinct(col[, delimiter]) Restituisce la concatenazione di valori di input non Null distinti, separati dal delimitatore.
max(col) Restituisce il valore massimo dell'espressione in un gruppo.
max_by(col, ord) Restituisce il valore del parametro col associato al valore massimo del parametro ord.
mean(col) Restituisce la media dei valori in un gruppo.
median(col) Restituisce la median dei valori in un gruppo.
min(col) Restituisce il valore minimo dell'espressione in un gruppo.
min_by(col, ord) Restituisce il valore del parametro col associato al valore minimo del parametro ord.
mode(col[, deterministic]) Restituisce il valore più frequente in un gruppo.
percentile(col, percentage[, frequency]) Restituisce i percentili esatti dell'espr di colonna numerica in corrispondenza delle percentuali indicate con intervallo di valori in [0,0, 1,0].
percentile_approx(col, percentage[, accuracy]) Restituisce il percentile approssimativo della colonna numerica col, ovvero il valore più piccolo nei valori ordinati di col (ordinati dal minimo al massimo), tale che non più della percentuale dei valori di col sia minore o uguale a quel valore.
product(col) Restituisce il prodotto dei valori in un gruppo.
regr_avgx(y, x) Restituisce la media della variabile indipendente per coppie non Null in un gruppo, dove y è la variabile dipendente e x è la variabile indipendente.
regr_avgy(y, x) Restituisce la media della variabile dipendente per coppie non Null in un gruppo, dove y è la variabile dipendente e x è la variabile indipendente.
regr_count(y, x) Restituisce il numero di coppie di numeri non Null in un gruppo, dove y è la variabile dipendente e x è la variabile indipendente.
regr_intercept(y, x) Restituisce l'intercetta della linea di regressione lineare univariata per coppie non nulle all'interno di un gruppo, dove y è la variabile dipendente e x è la variabile indipendente.
regr_r2(y, x) Restituisce il coefficiente di determinazione per le coppie non Null in un gruppo, dove y è la variabile dipendente e x è la variabile indipendente.
regr_slope(y, x) Restituisce la pendenza della linea di regressione lineare per coppie non Null in un gruppo, dove y è la variabile dipendente e x è la variabile indipendente.
regr_sxx(y, x) Restituisce REGR_COUNT(y, x) * VAR_POP(x) per coppie non Null in un gruppo, dove y è la variabile dipendente e x è la variabile indipendente.
regr_sxy(y, x) Restituisce REGR_COUNT(y, x) * COVAR_POP(y, x) per coppie non Null in un gruppo, dove y è la variabile dipendente e x è la variabile indipendente.
regr_syy(y, x) Restituisce REGR_COUNT(y, x) * VAR_POP(y) per coppie non Null in un gruppo, dove y è la variabile dipendente e x è la variabile indipendente.
skewness(col) Restituisce l'asimmetria dei valori in un gruppo.
some(col) Restituisce 'true' se almeno uno dei valori della colonna è 'true'.
std(col) Alias per stddev_samp.
stddev(col) Alias per stddev_samp.
stddev_pop(col) Restituisce la deviazione standard della popolazione dell'espressione in un gruppo.
stddev_samp(col) Restituisce la deviazione standard campionaria non distorta dell'espressione di un gruppo.
string_agg(col[, delimiter]) Restituisce la concatenazione di valori di input non Null, separati dal delimitatore.
string_agg_distinct(col[, delimiter]) Restituisce la concatenazione di valori di input non Null distinti, separati dal delimitatore.
sum(col) Restituisce la somma di tutti i valori nell'espressione.
sum_distinct(col) Restituisce la somma di valori distinti nell'espressione.
try_avg(col) Restituisce la media calcolata dai valori di un gruppo e il risultato è Null in caso di overflow.
try_sum(col) Restituisce la somma calcolata dai valori di un gruppo e il risultato è Null in caso di overflow.
var_pop(col) Restituisce la varianza della popolazione dei valori in un gruppo.
var_samp(col) Restituisce la varianza del campione non distorta dei valori in un gruppo.
variance(col) Alias per var_samp

Funzioni finestra

Funzione Description
cume_dist() Restituisce la distribuzione cumulativa dei valori all'interno di una partizione di finestra, ovvero la frazione di righe al di sotto della riga corrente.
dense_rank() Restituisce il rango delle righe all'interno di una partizione di finestra, senza interruzioni.
lag(col[, offset, default]) Restituisce il valore di offset delle righe prima della riga corrente e il valore predefinito se è presente meno di righe di offset prima della riga corrente.
lead(col[, offset, default]) Restituisce il valore che corrisponde alle righe di offset dopo la riga corrente e il valore predefinito se sono presenti righe minori di offset dopo la riga corrente.
nth_value(col, offset[, ignoreNulls]) Restituisce il valore che rappresenta la riga di offset della cornice della finestra (conteggio da 1) e null se le dimensioni della cornice della finestra sono inferiori alle righe di offset.
ntile(n) Restituisce l'ID del gruppo ntile (da 1 a n incluso) in una partizione di finestra ordinata.
percent_rank() Restituisce il rango relativo, ad esempio
rank() Restituisce il rango di righe all'interno di una partizione di finestra.
row_number() Restituisce un numero sequenziale a partire da 1 all'interno di una partizione di finestra.

Funzioni del generatore

Funzione Description
explode(col) Restituisce una nuova riga per ogni elemento nella matrice o nella mappa specificata.
explode_outer(col) Restituisce una nuova riga per ogni elemento nella matrice o nella mappa specificata.
inline(col) Esplode un array di strutture in una tabella.
inline_outer(col) Esplode un array di strutture in una tabella.
posexplode(col) Restituisce una nuova riga per ogni elemento con posizione nella matrice o nella mappa specificata.
posexplode_outer(col) Restituisce una nuova riga per ogni elemento con posizione nella matrice o nella mappa specificata.
stack(*cols) Separa col1, ..., colk distribuendo in n righe.

Funzioni di trasformazione della partizione

Funzione Description
partitioning.years(col) Trasformazione per timestamp e date per partizionare i dati in anni.
partitioning.months(col) Una trasformazione per partizionare i dati in mesi utilizzando timestamp e date.
partitioning.days(col) Una trasformazione per timestamp e date per suddividere i dati in giorni.
partitioning.hours(col) Trasformazione per i timestamp per partizionare i dati in ore.
partitioning.bucket(numBuckets, col) Trasformazione per qualsiasi tipo che viene partizionato tramite un hash della colonna di input.

Funzioni geospaziali H3 (Databricks)

Funzione Description
h3_boundaryasgeojson(col) Restituisce il limite di una cella H3 in formato GeoJSON
h3_boundaryaswkb(col) Restituisce il limite di una cella H3 in formato WKB
h3_boundaryaswkt(col) Restituisce il limite di una cella H3 in formato WKT
h3_centerasgeojson(col) Restituisce il centro di una cella H3 in formato GeoJSON
h3_centeraswkb(col) Restituisce il centro di una cella H3 in formato WKB
h3_centeraswkt(col) Restituisce il centro di una cella H3 in formato WKT
h3_compact(col) Compatta il set di input di ID cella H3 il più possibile
h3_coverash3(col1,col2) Restituisce un array di ID di celle rappresentati come numeri interi lunghi, corrispondenti a esagoni o pentagoni della risoluzione specificata, che coprono in maniera minima la geografia lineare o areale dell'input.
h3_coverash3string(col1,col2) Restituisce un array di ID cella rappresentati come stringhe, corrispondenti agli esagoni o pentagoni della risoluzione specificata che coprono in modo minimo la geografia lineare o areale dell'input.
h3_distance(col1,col2) Restituisce la distanza della griglia tra due ID cella H3
h3_h3tostring(col) Converte un ID cella H3 in una stringa che rappresenta l'ID cella come stringa esadecimale
h3_hexring(col1,col2) Restituisce una matrice di ID cella H3 che formano un anello esagonale vuoto centrato nella cella H3 di origine e che si trovano alla distanza della griglia k dalla cella H3 di origine
h3_ischildof(col1,col2) Restituisce True se il primo ID cella H3 è figlio del secondo ID cella H3
h3_ispentagon(col) Restituisce True se l'ID cella H3 di input rappresenta un pentagono
h3_isvalid(col) Restituisce True se l'input rappresenta un ID cella H3 valido
h3_kring(col1,col2) Restituisce gli ID cella H3 che si trovano all'interno della distanza (griglia) k dell'ID cella di origine
h3_kringdistances(col1,col2) Restituisce tutti gli ID cella H3 (rappresentati come numeri interi lunghi o stringhe) entro la distanza della griglia k dall'ID cella H3 di origine, insieme alla distanza dall'ID cella H3 di origine
h3_longlatash3(col1,col2,col3) Restituisce l'ID della cella H3 (come BIGINT) corrispondente alla longitudine e latitudine fornite, alla risoluzione indicata.
h3_longlatash3string(col1,col2,col3) Restituisce l'ID della cella H3 (come stringa) corrispondente alla longitudine e latitudine fornite alla risoluzione indicata
h3_maxchild(col1,col2) Restituisce il figlio con il valore massimo della cella H3 di input alla risoluzione specificata.
h3_minchild(col1,col2) Restituisce il figlio con il valore minimo della cella H3 di input alla risoluzione specificata
h3_pointash3(col1,col2) Restituisce l'ID cella H3 (come valore di tipo BIGINT) corrispondente al punto fornito alla risoluzione specificata.
h3_pointash3string(col1,col2) Restituisce l'ID cella H3 (come stringa) corrispondente al punto fornito alla risoluzione specificata
h3_polyfillash3(col1,col2) Restituisce una matrice di ID cella rappresentati come numeri interi lunghi, corrispondenti agli esagoni o ai pentagoni della risoluzione specificata contenuti nell'area geografica dell'input
h3_polyfillash3string(col1,col2) Restituisce una matrice di ID cella rappresentati come stringhe, corrispondenti agli esagoni o ai pentagoni della risoluzione specificata contenuti nell'area geografica dell'input
h3_resolution(col) Restituisce la risoluzione dell'ID cella H3
h3_stringtoh3(col) Converte l'ID cella H3 dalla rappresentazione in formato stringa alla relativa rappresentazione come big integer.
h3_tessellateaswkb(col1,col2) Restituisce una matrice di struct che rappresentano i chip che coprono l'area geografica alla risoluzione specificata
h3_tochildren(col1,col2) Restituisce gli ID di cella H3 figlio dell'ID cella H3 di input alla risoluzione specificata
h3_toparent(col1,col2) Restituisce l'ID cella H3 padre dell'ID cella H3 di input alla risoluzione specificata
h3_try_coverash3(col1,col2) Restituisce un array di ID di celle rappresentati come numeri interi lunghi, corrispondenti a esagoni o pentagoni della risoluzione specificata, che coprono in maniera minima la geografia lineare o areale dell'input.
h3_try_coverash3string(col1,col2) Restituisce un array di ID cella rappresentati come stringhe, corrispondenti agli esagoni o pentagoni della risoluzione specificata che coprono in modo minimo la geografia lineare o areale dell'input.
h3_try_distance(col1,col2) Restituisce la distanza della griglia tra due ID cella H3 della stessa risoluzione o None se la distanza non è definita.
h3_try_polyfillash3(col1,col2) Restituisce una matrice di ID cella rappresentati come numeri interi lunghi, corrispondenti agli esagoni o ai pentagoni della risoluzione specificata contenuti nell'area geografica dell'input
h3_try_polyfillash3string(col1,col2) Restituisce una matrice di ID cella rappresentati come stringhe, corrispondenti agli esagoni o ai pentagoni della risoluzione specificata contenuti nell'area geografica dell'input
h3_try_tessellateaswkb(col1,col2) Restituisce una matrice di struct che rappresentano i chip che coprono l'area geografica alla risoluzione specificata oppure null se la geometria non è valida
h3_try_validate(col) Restituisce il valore di input se è una cella H3 valida o Nessuna in caso contrario.
h3_uncompact(col1,col2) Decomprime l'insieme di input di ID cella H3 alla risoluzione specificata.
h3_validate(col) Restituisce il valore di input se è una cella H3 valida o genera un errore in caso contrario.

Funzioni Geospaziali ST (Databricks)

Funzione Description
st_addpoint(col1,col2,col3) Aggiunge un nuovo punto alla posizione n-esima nella linea di input Geography o Geometry
st_area(col) Restituisce l'area dell'area geografica o della geometria di input
st_asbinary(col1,col2) Restituisce il valore Geography o Geometry di input in formato WKB
st_asewkb(col1,col2) Restituisce il valore Geometry di input in formato EWKB
st_asewkt(col) Restituisce il valore Geography o Geometry di input in formato EWKT
st_asgeojson(col) Restituisce il valore Geography o Geometry di input in formato GeoJSON
st_astext(col) Restituisce il valore Geography o Geometry di input in formato WKT
st_aswkb(col1,col2) Restituisce il valore Geography o Geometry di input in formato WKB
st_aswkt(col) Restituisce il valore Geography o Geometry di input in formato WKT
st_buffer(col1,col2) Restituisce il buffer della geometria di input utilizzando il raggio specificato.
st_centroid(col) Restituisce il centroide della geometria di input come geometria di punto 2D
st_concavehull(col1,col2,col3) Restituisce lo scafo concavo della geometria di input come geometria utilizzando il rapporto di lunghezza specificato
st_contains(col1,col2) Restituisce True se la prima geometria contiene la seconda geometria
st_convexhull(col) Restituisce lo scafo convesso della geometria di input come geometria
st_covers(col1,col2) Restituisce True se la prima geometria copre la seconda geometria
st_difference(col1,col2) Restituisce il set di punti diverso delle due geometrie di input come geometria 2D
st_dimension(col) Restituisce la dimensione topologica della proiezione 2D della geometria di input
st_disjoint(col1,col2) Restituisce True se le due geometrie non sono contigue
st_distance(col1,col2) Restituisce la distanza cartesiana 2D tra le due geometrie di input
st_distancesphere(col1,col2) Restituisce la distanza sferica , espressa in metri, tra due geometrie di punto, misurate su una sfera il cui raggio è il raggio medio dell'ellissoide WGS84
st_distancespheroid(col1,col2) Restituisce la distanza geodesica , espressa in metri, tra due geometrie di punto sull'ellissoide WGS84
st_dwithin(col1,col2,col3) Restituisce True se la distanza cartesiana 2D tra le due geometrie di input è minore o uguale alla distanza di input
st_endpoint(col) Restituisce l'ultimo punto della riga di input o None se non esiste
st_envelope(col) Restituisce il rettangolo di selezione minimo (busta) allineato all'asse cartesiano 2D della geometria non vuota di input, come geometria
st_envelope_agg(col) Restituisce l'involucro di tutte le geometrie nella colonna oppure None se la colonna ha zero righe o contiene solo valori None
st_equals(col1,col2) Restituisce True se le due geometrie sono geometricamente uguali
st_exteriorring(col) Restituisce l'anello esterno (shell), come LineString, del valore di Geography o Geometry di input che rappresenta un poligono
st_flipcoordinates(col) Scambia le coordinate X e Y della geometria di input
st_geogfromgeojson(col) Analizza la descrizione GeoJSON e restituisce il valore Geography corrispondente
st_geogfromtext(col) Analizza la descrizione WKT e restituisce il valore Geography corrispondente
st_geogfromwkb(col) Analizza la descrizione WKB di input e restituisce il valore Geography corrispondente
st_geogfromwkt(col) Analizza la descrizione WKT e restituisce il valore Geography corrispondente
st_geohash(col1,col2) Restituisce il geohash della Geometria di input.
st_geometryn(col1,col2) Restituisce l'n-esimo elemento con indice pari a 1 della geometria multipla di input o None se non esiste.
st_geometrytype(col) Restituisce il tipo del valore Geography o Geometry di input come stringa
st_geomfromewkb(col) Analizza la descrizione EWKB di input e restituisce il valore Geometry corrispondente
st_geomfromgeohash(col) Restituisce la casella della griglia geohash corrispondente al valore geohash di input come geometria di un poligono 2D
st_geomfromgeojson(col) Analizza la descrizione GeoJSON e restituisce il valore Geometry corrispondente
st_geomfromtext(col1,col2) Analizza la descrizione WKT e restituisce il valore Geometry corrispondente
st_geomfromwkb(col1,col2) Analizza la descrizione WKB di input e restituisce il valore Geometry corrispondente
st_geomfromwkt(col1,col2) Analizza la descrizione WKT e restituisce il valore Geometry corrispondente
st_intersection(col1,col2) Restituisce l'intersezione del set di punti delle due geometrie di input come geometria 2D
st_intersects(col1,col2) Restituisce True se le due geometrie si intersecano
st_isempty(col) Restituisce True se il valore Geography o Geometry di input non contiene punti non vuoti
st_isvalid(col) Restituisce True se la geometria di input è una geometria valida nel senso OGC
st_length(col) Restituisce la lunghezza del valore di input geometry o geography
st_m(col) Restituisce la coordinata M della geometria del punto di input oppure None se la geometria del punto di input è vuota o se non ha una coordinata M
st_makeline(col) Restituisce una geometria lineare i cui punti corrispondono ai punti non vuoti delle geometrie nell'array di input delle geometrie, che devono essere punti, linee spezzate o multipunti
st_makepolygon(col1,col2) Costruisce un poligono dal limite esterno di input e dalla matrice facoltativa di limiti interni, rappresentati come stringhe di riga chiuse
st_multi(col) Restituisce il valore Geography o Geometry di input come valore multispaziale equivalente, mantenendo lo SRID originale
st_ndims(col) Restituisce la dimensione delle coordinate del valore di input Geography o Geometry
st_npoints(col) Restituisce il numero di punti non vuoti nel valore Geography o Geometry di input
st_numgeometries(col) Restituisce il numero di geometrie nella geometria di input
st_perimeter(col) Restituisce il perimetro dell'area geografica o della geometria di input
st_point(col1,col2,col3) Restituisce una geometria di punti 2D con le coordinate x e y e il valore SRID specificati
st_pointfromgeohash(col) Restituisce il centro della casella della griglia geohash corrispondente al valore geohash di input come geometria di punto 2D
st_pointn(col1,col2) Restituisce il punto n in base 1 della stringa di riga di input o None se non esiste
st_removepoint(col1,col2) Rimuove il n-esimo punto dalla linea di input Geography o Geometry
st_reverse(col) Inverte l'ordine dei vertici nel valore Geography o Geometry di input
st_rotate(col1,col2) Ruota la geometria di input attorno all'asse Z in base all'angolo di rotazione specificato (in radianti)
st_scale(col1,col2,col3,col4) Ridimensiona la geometria di input nelle direzioni X, Y e Z (facoltative) usando i fattori specificati
st_setpoint(col1,col2,col3) Imposta il n-esimo punto nella linea di input Geography o Geometry
st_setsrid(col1,col2) Restituisce un nuovo valore Geometry il cui SRID è il valore SRID specificato
st_simplify(col1,col2) Semplifica la geometria di input usando l'algoritmo Douglas-Peucker
st_srid(col) Restituisce lo SRID del valore geospaziale di input
st_startpoint(col) Restituisce il primo punto della riga di input o None se non esiste
st_touches(col1,col2) Restituisce True se le due geometrie si toccano tra loro
st_transform(col1,col2) Trasforma le coordinate X e Y della geometria di input nel sistema di riferimento delle coordinate (CRS) descritto dal valore SRID fornito
st_translate(col1,col2,col3,col4) Converte la geometria di input nelle direzioni X, Y e Z (facoltative) usando gli offset forniti
st_union(col1,col2) Restituisce l'unione del set di punti delle due geometrie di input come geometria 2D
st_union_agg(col) Restituisce l'unione a livello di punto di tutte le geometrie della colonna oppure None se la colonna contiene zero righe o contiene solo None valori
st_within(col1,col2) Restituisce True se la prima geometria si trova all'interno della seconda geometria
st_x(col) Restituisce la coordinata X della geometria del punto di input o None se la geometria del punto di input è vuota
st_xmax(col) Restituisce la coordinata X massima della geometria di input o None se la geometria di input è vuota
st_xmin(col) Restituisce la coordinata X minima della geometria di input o None se la geometria di input è vuota
st_y(col) Restituisce la coordinata Y della geometria del punto di input o None se la geometria del punto di input è vuota
st_ymax(col) Restituisce la coordinata Y massima della geometria di input o None se la geometria di input è vuota
st_ymin(col) Restituisce la coordinata Y minima della geometria di input o None se la geometria di input è vuota
st_z(col) Restituisce la coordinata Z della geometria del punto di input oppure None se la geometria del punto di input è vuota o se non ha una coordinata Z
st_zmax(col) Restituisce la coordinata Z massima della geometria di input oppure None se la geometria di input è vuota o non contiene coordinate Z
st_zmin(col) Restituisce la coordinata Z minima della geometria di input oppure None se la geometria di input è vuota o non contiene coordinate Z
to_geography(col) Analizza il valore BINARY o stringa di input e restituisce il valore Geography corrispondente
to_geometry(col) Analizza il valore BINARY o stringa di input e restituisce il valore Geometry corrispondente
try_to_geography(col) Analizza il valore BINARY o stringa di input e restituisce il valore Geography corrispondente oppure None se l'input non è valido
try_to_geometry(col) Analizza il valore BINARY o stringa di input e restituisce il valore Geometry corrispondente oppure None se l'input non è valido

Funzioni CSV

Funzione Description
from_csv(col, schema[, options]) Analizza una colonna contenente una stringa CSV in una riga con lo schema specificato.
schema_of_csv(csv[, options]) Analizza una stringa CSV e ne deduce lo schema in formato DDL.
to_csv(col[, options]) Converte una colonna contenente uno StructType in una stringa CSV.

Funzioni JSON

Funzione Description
from_json(col, schema[, options]) Analizza una colonna contenente una stringa JSON in un oggetto MapType con StringType come tipo di chiavi, StructType o ArrayType con lo schema specificato.
get_json_object(col, path) Estrae l'oggetto JSON da una stringa json in base al percorso JSON specificato e restituisce una stringa json dell'oggetto JSON estratto.
json_array_length(col) Restituisce il numero di elementi nella matrice JSON più esterna.
json_object_keys(col) Restituisce tutte le chiavi dell'oggetto JSON più esterno come matrice.
json_tuple(col, *fields) Crea una nuova riga per una colonna JSON in base ai nomi dei campi specificati.
schema_of_json(json[, options]) Analizza una stringa JSON e ne deduce lo schema in formato DDL.
to_json(col[, options]) Converte una colonna contenente uno StructType, un ArrayType o un MapType in una stringa JSON.

Funzioni varianti

Funzione Description
is_variant_null(v) Controllare se un valore variant è una variante null.
parse_json(col) Analizza una colonna contenente una stringa JSON in un VariantType.
schema_of_variant(v) Restituisce lo schema nel formato SQL di una variante.
schema_of_variant_agg(v) Restituisce lo schema unito nel formato SQL di una colonna variant.
try_variant_get(v, path, targetType) Estrae una variante secondaria da v in base al percorso e quindi esegue il cast della variante secondaria in targetType.
variant_get(v, path, targetType) Estrae una variante secondaria da v in base al percorso e quindi esegue il cast della variante secondaria in targetType.
try_parse_json(col) Analizza una colonna contenente una stringa JSON in un VariantType.
to_variant_object(col) Converte una colonna contenente input annidati (array/map/struct) in varianti in cui le mappe e gli struct vengono convertiti in oggetti varianti non ordinati a differenza degli struct SQL.

Funzioni XML

Funzione Description
from_xml(col, schema[, options]) Analizza una colonna che contiene una stringa XML in una riga con lo schema specificato.
schema_of_xml(xml[, options]) Analizza una stringa XML e ne deduce lo schema in formato DDL.
to_xml(col[, options]) Converte una colonna contenente un StructType in una stringa XML.
xpath(xml, path) Restituisce una matrice di stringhe di valori all'interno dei nodi xml che corrispondono all'espressione XPath.
xpath_boolean(xml, path) Restituisce true se l'espressione XPath viene valutata come vera oppure se viene individuato un nodo corrispondente.
xpath_double(xml, path) Restituisce un valore doppio: il valore zero se non viene trovata alcuna corrispondenza, oppure NaN se la corrispondenza viene trovata ma il valore non è numerico.
xpath_float(xml, path) Restituisce un valore float, il valore zero se non viene trovata alcuna corrispondenza o NaN se viene trovata una corrispondenza, ma il valore non è numerico.
xpath_int(xml, path) Restituisce un valore intero o il valore zero se non viene trovata alcuna corrispondenza oppure viene trovata una corrispondenza, ma il valore non è numerico.
xpath_long(xml, path) Restituisce un valore intero lungo oppure il valore zero se non viene trovata alcuna corrispondenza oppure viene trovata una corrispondenza, ma il valore non è numerico.
xpath_number(xml, path) Restituisce un valore doppio: il valore zero se non viene trovata alcuna corrispondenza, oppure NaN se la corrispondenza viene trovata ma il valore non è numerico.
xpath_short(xml, path) Restituisce un valore intero breve o il valore zero se non viene trovata alcuna corrispondenza oppure viene trovata una corrispondenza, ma il valore non è numerico.
xpath_string(xml, path) Restituisce il contenuto di testo del primo nodo xml che corrisponde all'espressione XPath.

Funzioni URL

Funzione Description
parse_url(url, partToExtract[, key]) Estrae una parte specificata da un URL.
try_parse_url(url, partToExtract[, key]) Provare a eseguire l'operazione parse_url , ma restituire un valore NULL anziché generare un errore se non è possibile eseguire l'analisi.
url_decode(str) Decodifica una stringa codificata in URL nel formato originale application/x-www-form-urlencoded.
url_encode(str) Codifica una stringa in una stringa con codifica URL nel formato 'application/x-www-form-urlencoded'.
try_url_decode(str) Provare a eseguire l'operazione url_decode , ma restituire un valore NULL anziché generare un errore se non è possibile eseguire la decodifica.

Funzioni varie

Funzione Description
aes_decrypt(input, key[, mode, padding, aad]) Restituisce un valore decrittografato dell'input utilizzando AES in modalità con spaziatura interna.
aes_encrypt(input, key[, mode, padding, iv, aad]) Restituisce un valore crittografato di input usando AES in modalità specificata con la spaziatura interna specificata.
assert_true(col[, errMsg]) Restituisce null se la colonna di input è true; genera un'eccezione con il messaggio di errore specificato in caso contrario.
bitmap_bit_position(col) Restituisce la posizione di bit per la colonna di input specificata.
bitmap_bucket_number(col) Restituisce il numero di bucket per la colonna di input specificata.
bitmap_count(col) Restituisce il numero di bit impostati nella bitmap di input.
current_catalog() Restituisce il catalogo corrente.
current_database() Restituisce il database corrente.
current_schema() Restituisce lo schema corrente.
current_user() Restituisce l'utente corrente.
hll_sketch_estimate(col) Restituisce il numero stimato di valori univoci in base alla rappresentazione binaria di un oggetto Datasketches HllSketch.
hll_union(col1, col2[, allowDifferentLgConfigK]) Unisce due rappresentazioni binarie di oggetti Datasketches HllSketch, utilizzando un oggetto Union Datasketches.
input_file_block_length() Restituisce la lunghezza del blocco letto o -1 se non disponibile.
input_file_block_start() Restituisce l'offset iniziale del blocco letto o -1 se non disponibile.
input_file_name() Crea una colonna stringa per il nome file dell'attività Spark corrente.
java_method(*cols) Richiama un metodo con riflessione.
monotonically_increasing_id() Colonna che genera numeri interi a 64 bit che aumentano in modo monotonico.
raise_error(errMsg) Genera un'eccezione con il messaggio di errore specificato.
reflect(*cols) Richiama un metodo con riflessione.
session_user() Restituisce il nome utente del contesto di esecuzione corrente.
spark_partition_id() Colonna per l'ID partizione.
try_aes_decrypt(input, key[, mode, padding, aad]) Provare a eseguire l'operazione aes_decrypt , ma restituire un valore NULL anziché generare un errore se non è possibile eseguire la decrittografia.
try_reflect(*cols) Provare a eseguire un'operazione reflect , ma restituire un valore NULL anziché generare un errore se il metodo invoke ha generato un'eccezione.
typeof(col) Restituisce una stringa di tipo DDL formattata per il tipo di dati dell'input.
user() Restituisce l'utente corrente.
version() Restituisce la versione di Spark.

Funzioni UDF, UDTF, UDT

Funzione Description
call_udf(udfName, *cols) Chiamare una funzione definita dall'utente.
pandas_udf([f, returnType, functionType]) Crea una funzione definita dall'utente di pandas (anche noto come
udf([f, returnType, useArrow]) Crea una funzione definita dall'utente.
udtf([cls, returnType, useArrow]) Crea una funzione di tabella definita dall'utente (UDTF).
unwrap_udt(col) Rimuovere il rivestimento della colonna del tipo di dati UDT verso il suo tipo base.

Funzioni con valori di tabella

Funzione Description
TableValuedFunction.collations() Ottenere tutte le collazioni delle stringhe di Spark SQL.
TableValuedFunction.explode(collection) Restituisce un dataframe contenente una nuova riga per ogni elemento nella matrice o nella mappa specificata.
TableValuedFunction.explode_outer(collection) Restituisce un dataframe contenente una nuova riga per ogni elemento con posizione nella matrice o nella mappa specificata.
TableValuedFunction.inline(input) Esplode un array di strutture in una tabella.
TableValuedFunction.inline_outer(input) Esplode un array di strutture in una tabella.
TableValuedFunction.json_tuple(input, *fields) Crea una nuova riga per una colonna JSON in base ai nomi dei campi specificati.
TableValuedFunction.posexplode(collection) Restituisce un dataframe contenente una nuova riga per ogni elemento con posizione nella matrice o nella mappa specificata.
TableValuedFunction.posexplode_outer(collection) Restituisce un dataframe contenente una nuova riga per ogni elemento con posizione nella matrice o nella mappa specificata.
TableValuedFunction.range(start[, end, ...]) Creare un DataFrame con una singola colonna di tipo pyspark.sql.types.LongType denominata id, contenente elementi in un intervallo da inizio a fine (esclusivo) con step valore di passaggio.
TableValuedFunction.sql_keywords() Ottenere parole chiave SPARK SQL.
TableValuedFunction.stack(n, *fields) Separa col1, ..., colk distribuendo in n righe.
TableValuedFunction.variant_explode(input) Separa un oggetto/matrice variant in più righe contenenti i relativi campi/elementi.
TableValuedFunction.variant_explode_outer(input) Separa un oggetto/matrice variant in più righe contenenti i relativi campi/elementi.