Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questa pagina fornisce un riferimento completo di tutte le funzioni supportate per i calcoli personalizzati nei dashboard di intelligenza artificiale/BI. Per informazioni su come usare calcoli personalizzati, vedere Che cosa sono i calcoli personalizzati?.
Funzioni di aggregazione
Tutte le misure calcolate devono essere aggregate. Sono supportate le operazioni di aggregazione seguenti:
Annotazioni
Usare la DISTINCT parola chiave nelle funzioni di aggregazione per includere solo valori univoci nell'aggregazione. Inoltre, la FILTER(WHERE condition) clausola può essere aggiunta a qualsiasi funzione di aggregazione per limitare i valori inclusi nel calcolo.
| Funzione | Description |
|---|---|
| any(expr) | Restituisce true se almeno un valore di expr nel gruppo è true. |
| any_value(expr) | Restituisce un valore di expr per un gruppo di righe. |
| approx_count_distinct(expr[, relativeSD]) | Restituisce il numero stimato di valori distinti in expr. |
| approx_percentile ([ALL | DISTINCT] expr, percentile [, accuratezza]) | Restituisce il valore percentile approssimativo di expr in corrispondenza del percentile specificato. |
| avg(expr) | Restituisce la media calcolata in una colonna o in un'espressione. |
| bool_or(expr) | Restituisce true se almeno un valore di expr è true. |
| corr(expr1, expr2) | Restituisce il coefficiente di correlazione di Pearson tra expr1 e expr2. |
| count(*) | Restituisce il numero di righe di un gruppo. |
| count(DISTINCT expr) | Restituisce il numero di righe univoce in un gruppo. |
| count_if(expr) | Restituisce il numero di righe che soddisfano una determinata condizione. |
| first(expr [, ignoreNull]) | Restituisce il primo valore di expr per un gruppo. |
| first_value(expr [, ignoreNull]) | Restituisce il primo valore di expr per un gruppo. |
| last(expr [, ignoreNull]) | Restituisce l'ultimo valore di expr per il gruppo. |
| last_value(expr [, ignoreNull]) | Restituisce l'ultimo valore di expr per il gruppo. |
| listagg(expr [, delimiter]) | Restituisce la concatenazione di valori non Null nel gruppo. |
| max(expr) | Restituisce il valore massimo in una colonna o in un'espressione. |
| max_by(expr1, expr2) | Restituisce il valore di expr1 associato al valore massimo di expr2. |
| mean(expr) | Restituisce la media calcolata in una colonna o in un'espressione. |
| median(expr) | Restituisce la median di un set di valori. |
| min(expr) | Restituisce il valore minimo in una colonna o in un'espressione. |
| min_by(expr1, expr2) | Restituisce il valore di expr1 associato al valore minimo di expr2. |
| mode(expr [, deterministic ]) | Restituisce il valore più frequente per expr. |
| percentile(expr, percentage [, frequency]) | Restituisce il valore percentile esatto di expr in corrispondenza del percentile specificato in un gruppo. |
| percentile_approx(expr, percentage [, accuratezza]) | Restituisce il valore percentile approssimativo di expr in corrispondenza del percentile specificato. |
| regr_slope(y, x) | Restituisce la pendenza della linea di regressione lineare per coppie non nulli in un gruppo. |
| some(expr) | Restituisce true se almeno un valore di expr nel gruppo è true. |
| std(expr) | Restituisce la deviazione standard di un set di valori. |
| stddev(expr) | Restituisce la deviazione standard di un set di valori. |
| stddev_pop(expr) | Restituisce la deviazione standard della popolazione di un set di valori. |
| stddev_samp(expr) | Restituisce la deviazione standard del campione di un set di valori. |
| string_agg(expr [, delimiter]) | Restituisce la concatenazione di valori stringa non Null nel gruppo. |
| sum(expr) | Restituisce il totale dei valori in una colonna o in un'espressione. |
| varianza(expr) | Restituisce la varianza di un set di valori. |
Operazioni aritmetiche
È possibile combinare espressioni con le operazioni aritmetiche seguenti:
| Operation | Description |
|---|---|
| expr1 % expr2 | Restituisce il resto della divisione di expr1 per expr2. |
| moltiplicatore * moltiplicando | Restituisce il prodotto di due espressioni. |
| expr1 + expr2 | Restituisce la somma di expr1 e expr2. |
| + espr | Restituisce il valore dell'espressione. |
| expr1 - expr2 | Restituisce la differenza durante la sottrazione di expr2 da expr1. |
| - espr | Restituisce il valore negato dell'espressione. |
| dividendo/divisore | Restituisce il risultato della divisione del dividendo per il divisore. |
| dividendo div divisore | Restituisce la parte intera della divisione di dividend per divisor. |
| abs(expr) | Restituisce il valore assoluto dell'espressione numerica. |
| acos(expr) | Restituisce il coseno inverso (coseno arco) di expr. |
| asin(expr) | Restituisce il seno inverso (seno arco) di expr. |
| bround(expr [, d]) | Arrotonda expr alle d posizioni decimali utilizzando la modalità di arrotondamento HALF_EVEN. |
| ceil(expr) o ceiling(expr) | Restituisce il numero intero più piccolo non minore di expr. |
| cos(expr) | Restituisce il coseno di expr. |
| exp(expr) | Restituisce e elevato alla potenza di expr. |
| floor(expr) | Restituisce l'intero più grande non maggiore di expr. |
| ln(expr) | Restituisce il logaritmo naturale dell'espressione. |
| log(base, expr) | Restituisce il logaritmo di expr con l'oggetto specificato base. |
| log10(expr) | Restituisce il logaritmo di base 10 dell'espressione. |
| mod(expr1, expr2) | Restituisce il resto della divisione di expr1 per expr2. |
| nullifzero(expr) | Restituisce NULL se expr è 0, in caso contrario restituisce expr. |
| pi() | Restituisce il valore di pi. |
| pmod(expr1, expr2) | Restituisce il valore positivo di expr1 mod expr2. |
| pow(expr1, expr2) o power(expr1, expr2) | Restituisce il risultato di expr1 elevato alla potenza di expr2. |
| radians(expr) | Converte i gradi in radianti. |
| rand([seed]) | Restituisce un valore casuale con distribuzione uniforme nell'intervallo compreso tra 0 (inclusi) e 1 (esclusivo). |
| round(expr [, d]) | Restituisce arrotondato expr a d posizioni decimali utilizzando HALF_UP modalità di arrotondamento. |
| sign(expr) | Restituisce il segno dell'espressione numerica. |
| sin(expr) | Restituisce il seno di expr. |
| sqrt(expr) | Restituisce la radice quadrata di expr. |
| try_add(expr1, expr2) | Aggiunge due valori. Se si verifica un errore, restituisce NULL. |
| try_divide(dividend, divisore) | Divide il dividendo per il divisore. Se si verifica un errore, restituisce NULL. |
| try_multiply(moltiplicatore, moltiplicatore) | Moltiplica due numeri. Se si verifica un errore, restituisce NULL. |
| try_subtract(expr1, expr2) | Sottrae expr2 da expr1. Se si verifica un errore, restituisce NULL. |
| zeroifnull(expr) | Restituisce 0 se expr è NULL, in caso contrario restituisce expr. |
Funzioni e operatori booleani
I calcoli personalizzati supportano operatori booleani e di confronto di base. Sono supportati gli operatori e le funzioni seguenti:
| Operation | Description |
|---|---|
| expr1 != expr2 | Restituisce true se expr1 non è uguale a expr2. |
| !expr | Non logico. |
| expr1 & expr2 | Restituisce l'operazione AND bit a bit di expr1 e expr2. |
| expr1 && expr2 | Restituisce true se sia expr1 che expr2 sono true. |
| expr1 <=> expr2 | Restituisce lo stesso risultato dell'operatore uguale per gli operandi non Null, ma restituisce true se entrambi sono nulle false se uno è null. |
| expr1 <> expr2 | Restituisce true se expr1 non è uguale a expr2. |
| expr1 < expr2 | Restituisce true se expr1 è minore di expr2. |
| expr1 <= expr2 | Restituisce true se expr1 è minore o uguale a expr2. |
| expr1 = expr2 | Restituisce true se expr1 è uguale a expr2. |
| expr1 == expr2 | Restituisce true se expr1 è uguale a expr2. |
| expr1 > expr2 | Restituisce true se expr1 è maggiore di expr2. |
| expr1 >= expr2 | Restituisce true se expr1 è maggiore o uguale a expr2. |
| expr1 ^ expr2 | Restituisce l'OR esclusivo bit per bit di expr1 e expr2. |
| expr1 | expr2 | Restituisce l'OR bit per bit di expr1 e expr2. |
| expr1 || expr2 | Restituisce true se almeno uno di expr1 o expr2 è true. |
| ~expr | Restituisce il NOT bit per bit di expr. |
| expr1 e expr2 | Restituisce true se sia expr1 che expr2 sono true. |
| expr tra limite inferiore e limite superiore | Verifica se expr rientra nell'intervallo specificato (sintassi speciale). |
| str ilike pattern | Restituisce true se str corrisponde pattern (senza distinzione tra maiuscole e minuscole). Può essere usato anche come ilike(str, pattern [, escapeChar]). |
| expr in (value1, value2, ...) | Verifica se expr corrisponde a qualsiasi valore in un elenco (sintassi speciale). |
| isnan(expr) | Restituisce true se expr è NaN (non un numero). |
| isnotnull(expr) | Restituisce true se expr non è NULL. |
| isnull(expr) | Restituisce true se expr è NULL. |
| modello simile a str | Restituisce true se str corrisponde a pattern. Può essere usato anche come like(str, pattern [, escapeChar]). |
| non espr | Non logico (operatore prefisso). Può essere usato anche come not(expr). |
| expr1 o expr2 | Restituisce true se almeno uno di expr1 o expr2 è true. |
| str regexp regexp | Restituisce true se str corrisponde all'espressione regexpregolare . |
| regexp_like(str, regexp) | Restituisce true se str corrisponde all'espressione regexpregolare . |
| str rlike regexp | Restituisce true se str corrisponde all'espressione regexpregolare . |
Funzioni di cast
Utilizzare le funzioni seguenti per trasformare i valori in un tipo specificato.
| Funzione | Description |
|---|---|
| expr :: type | Esegue il cast del valore expr verso il tipo di dati di destinazione type. |
| bigint(expr) | Esegue il cast del valore expr su BIGINT. |
| boolean(expr) | Esegue il cast del valore expr su BOOLEAN. |
| cast(expr AS tipo) | Esegue il cast del valore expr verso il tipo di dati di destinazione type. |
| date(expr) | Esegue il cast del valore expr su DATE. |
| decimal(expr [, p [, s]]) | Converte il valore expr a DECIMAL con precisione p e scala s. |
| double(expr) | Esegue il cast del valore expr su DOUBLE. |
| float(expr) | Esegue il cast del valore expr su FLOAT. |
| int(expr) | Esegue il cast del valore expr su INT. |
| string(expr) | Esegue il cast del valore expr su STRING. |
| timestamp(expr) | Esegue il cast del valore expr su TIMESTAMP. |
| to_date(expr [, fmt]) | Converte expr con fmt in una data. |
| to_timestamp(expr [, fmt]) | Converte expr utilizzando fmt in un timestamp. |
| try_cast(expr AS tipo) | Converte il valore expr al tipo di dati di destinazione type in modo sicuro. |
| try_to_timestamp(expr [, fmt]) | Effettua il parsing di expr con fmt in modo sicuro per ottenere un timestamp. |
Funzioni di data, timestamp e intervallo
Usare le funzioni seguenti per usare date, timestamp e intervalli:
| Funzione | Description |
|---|---|
| add_months(start_date, num_months) | Restituisce la data che è num_months dopo start_date. |
| curdate() | Restituisce la data corrente. |
| current_date() | Restituisce la data corrente. |
| current_timestamp() | Restituisce il timestamp corrente. |
| current_timezone() | Restituisce il fuso orario locale della sessione corrente. |
| date_add(data_inizio, num_giorni) | Restituisce la data che è num_days dopo start_date. |
| date_diff(endDate, startDate) | Restituisce il numero di giorni da startDate a endDate. |
| date_format(expr, fmt) | Converte un timestamp in una stringa nel formato fmt. |
| date_part(field, source) | Estrae una parte specifica, ad esempio anno, mese o giorno, da una data o un timestamp. |
| date_sub(start_date, num_days) | Restituisce la data che è num_days prima di start_date. |
| date_trunc(fmt, source) | Tronca una data o un timestamp a un'unità specificata, ad esempio anno o mese. |
| dateadd(unità, valore, espressione) | Aggiunge l'intervallo di tempo specificato a una data o a un timestamp. |
| datediff(endDate, startDate) | Restituisce il numero di giorni da startDate a endDate. |
| day(expr) | Restituisce il giorno del mese dalla data o dal timestamp. |
| dayname(expr) | Restituisce il nome del giorno della settimana dalla data o dal timestamp. |
| dayofmonth(expr) | Restituisce il giorno del mese dalla data o dal timestamp. |
| dayofweek(expr) | Restituisce il giorno della settimana dalla data o dal timestamp (1 = domenica, 7 = sabato). |
| dayofyear(expr) | Restituisce il giorno dell'anno dalla data o dal timestamp. |
| extract(field FROM source) | Estrae una parte della data o del timestamp. |
| from_unixtime(unix_time [, fmt]) | Converte il numero di secondi dall'epoca Unix a un timestamp. |
| from_utc_timestamp(timestamp, zona oraria) | Interpreta il timestamp specificato come UTC e viene convertito nel fuso orario specificato. |
| getdate() | Restituisce il timestamp corrente. |
| hour(expr) | Restituisce il componente ora del timestamp. |
| last_day(expr) | Restituisce l'ultimo giorno del mese a cui appartiene la data o il timestamp. |
| make_date(anno, mese, giorno) | Crea una data dai campi anno, mese e giorno. |
| make_timestamp(year, month, day, hour, min, sec [, timezone]) | Crea un timestamp da campi anno, mese, giorno, ora, minuto, secondo e facoltativamente fuso orario. |
| minuto(expr) | Restituisce il componente minuto del timestamp. |
| month(expr) | Restituisce il componente mensile della data o del timestamp. |
| months_between(timestamp1, timestamp2 [, roundOff]) | Restituisce il numero di mesi tra timestamp1 e timestamp2. |
| next_day(data_inizio, giorno_della_settimana) | Restituisce la prima data successiva a start_date e denominata come day_of_week. |
| now() | Restituisce il timestamp corrente. |
| quarter(expr) | Restituisce il trimestre dell'anno per la data o il timestamp (da 1 a 4). |
| second(expr) | Restituisce il secondo componente del timestamp. |
| timediff(endDate, startDate) | Restituisce la differenza tra due timestamp misurati in unità. |
| timestamp_micros(microsecondi) | Crea un timestamp dal conteggio dei microsecondi dall'epoca Unix. |
| timestamp_millis(millisecondi) | Crea un timestamp dal numero di millisecondi della data di inizio dell'epoca Unix. |
| timestamp_seconds(seconds) | Crea un timestamp dal numero di secondi dall'epoca Unix. |
| timestampadd(unit, value, timestamp) | Aggiunge l'intervallo di tempo specificato a un timestamp. |
| timestampdiff(unità, inizio, fine) | Restituisce la differenza tra due timestamp misurati in unità. |
| to_date(expr [, fmt]) | Converte expr con fmt in una data. |
| to_timestamp(expr [, fmt]) | Converte expr utilizzando fmt in un timestamp. |
| to_unix_timestamp(expr [, fmt]) | Restituisce il timestamp Unix dell'ora specificata. |
| to_utc_timestamp(timestamp, fuso_orario) | Interpreta il timestamp specificato nel fuso orario specificato e viene convertito in UTC. |
| trunc(expr, fmt) | Restituisce expr con la parte relativa all'ora del giorno troncata all'unità specificata dal modello fmt di formato. |
| unix_micros(timestamp) | Restituisce il numero di microsecondi dall'epoca Unix. |
| unix_millis(timestamp) | Restituisce il numero di millisecondi dall'epoca Unix. |
| unix_seconds(timestamp) | Restituisce il numero di secondi dall'epoca Unix. |
| unix_timestamp([expr [, fmt]]) | Restituisce il timestamp Unix dell'ora specificata. |
| weekday(expr) | Restituisce il giorno della settimana dalla data o dal timestamp (0 = lunedì, 6 = domenica). |
| settimana_dell_anno(expr) | Restituisce la settimana dell'anno dalla data o dal timestamp. |
| year(expr) | Restituisce la componente anno della data o del timestamp. |
Funzioni stringa
Usare le funzioni seguenti per trasformare le stringhe. Per trasformare le stringhe datetime, vedere Funzioni cast.
| Funzione | Description |
|---|---|
| base64(expr) | Converte l'argomento in una stringa base64. |
| char(expr) | Restituisce il carattere in corrispondenza del punto di codice UTF-16 fornito. |
| charindex(substr, str [, pos]) | Restituisce la posizione della prima occorrenza di substr in str dopo la posizione pos. |
| concat(expr1, expr2 [, ...]) | Restituisce la concatenazione degli argomenti. |
| concat_ws(sep [, expr1 [, ...]]) | Restituisce la concatenazione di stringhe separate da sep. |
| contains(left, right) | Restituisce true se right viene trovato in left. |
| convert_timezone(sourceTz, targetTz, sourceTs) | Converte il timestamp sourceTs dal sourceTz fuso orario al targetTz fuso orario. |
| decode(expr, charSet) | Converte il file binario expr in una stringa usando la codifica charSetdel set di caratteri . |
| endswith(left, right) | Restituisce true se left termina con right. |
| find_in_set(str, str_array) | Restituisce l'indice (in base 1) della stringa specificata nell'elenco delimitato da virgole. |
| format_number(expr, scale) | Formati expr come #,###,###.##, arrotondati a scale posizioni decimali. |
| format_string(format, expr [, ...]) | Restituisce una stringa formattata dalle stringhe di formato di tipo printf. |
| hex(expr) | Converte expr in formato esadecimale. |
| initcap(str) | Restituisce str con la prima lettera di ogni parola in maiuscolo. |
| instr(str, substr) | Restituisce la posizione della prima occorrenza di substr in str. |
| lcase(str) | Restituisce str con tutti i caratteri modificati in minuscolo. |
| left(str, len) | Restituisce i caratteri più a sinistra nella stringa len. |
| len(expr) | Restituisce la lunghezza della stringa o dell'espressione binaria. |
| length(expr) | Restituisce la lunghezza della stringa o dell'espressione binaria. |
| levenshtein(str1, str2 [, threshold]) | Restituisce la distanza Levenshtein tra le due stringhe date. |
| locate(substr, str [, pos]) | Restituisce la posizione della prima occorrenza di substr in str dopo la posizione pos. |
| lower(str) | Restituisce str con tutti i caratteri modificati in minuscolo. |
| lpad(str, len [, pad]) | Restituisce str riempito a sinistra con pad fino a raggiungere una lunghezza di len. |
| ltrim(str [, trimStr]) | Rimuove i caratteri iniziali da str. |
| md5(expr) | Restituisce un checksum MD5 a 128 bit sotto forma di stringa esadecimale. |
| parse_url(url, partToExtract [, key]) | Estrae una parte da url. |
| position(substr, str [, pos]) | Restituisce la posizione della prima occorrenza di substr in str dopo la posizione pos. |
| printf(format, expr [, ...]) | Restituisce una stringa formattata dalle stringhe di formato di tipo printf. |
| regexp_count(str, regexp) | Restituisce il numero di volte in cui l'espressione regolare regexp trova corrispondenze in str. |
| regexp_extract(str, regexp [, idx]) | Estrae un gruppo che corrisponde a regexp. |
| regexp_instr(str, regexp) | Restituisce la posizione della prima corrispondenza di regexp in str. |
| regexp_replace(str, regexp, rep [, position]) | Sostituisce tutte le sottostringhe di str che corrispondono regexp a rep. |
| regexp_substr(str, regexp) | Restituisce la sottostringa che corrisponde all'espressione regexp regolare all'interno di str. |
| repeat(str, n) | Restituisce la stringa che si ripete strn volte. |
| sostituisci(str, ricerca [, sostituzione]) | Sostituisce tutte le occorrenze di search con replace in str. |
| reverse(str) | Restituisce str con l'ordine dei caratteri invertiti. |
| right(str, len) | Restituisce i caratteri a destra len della stringa str. |
| rtrim([trimStr,] str) | Restituisce str con caratteri finali rimossi. |
| sha2(expr, bitLength) | Restituisce la famiglia di funzioni hash SHA-2. |
| split_part(str, delimiter, partNum) | Divide str per delimiter e restituisce la parte richiesta. |
| startswith(left, right) | Restituisce true se left inizia con right. |
| substr(str, pos [, len]) | Restituisce la sottostringa di str a partire da pos con lunghezza len. |
| substring(str, pos [, len]) | Restituisce la sottostringa di str a partire da pos con lunghezza len. |
| substring_index(str, delim, count) | Restituisce la sottostringa prima delle count occorrenze di delim. |
| to_char(expr [, fmt]) | Converte expr in una stringa. |
| to_number(expr [, fmt]) | Converte la stringa expr in un numero. |
| translate(input, from, to) | Converte input sostituendo i caratteri in from con i caratteri corrispondenti in to. |
| trim(str [, trimStr]) | Rimuove i caratteri iniziali e finali da str. |
| ucase(str) | Restituisce str con tutti i caratteri modificati in maiuscolo. |
| upper(str) | Restituisce str con tutti i caratteri modificati in maiuscolo. |
| url_encode(str) | Codifica str per l'uso nei parametri di query URL. |
Funzioni varie
Sono supportate anche le funzioni seguenti:
| Funzione | Description |
|---|---|
| AGGREGA SU | Calcola i valori tra intervalli di tempo o altri set ordinati per le misure. |
| CASE expr { WHEN opt1 THEN res1 } [...] [ELSE def] END | Restituisce resN per il primo optN uguale a expr o def se nessuno corrisponde. |
| CASE { WHEN cond1 THEN res1 } [...] [ELSE def] END | Restituisce resN per la prima condN che risulta vera, oppure def se non ne viene trovata nessuna. |
| coalesce(expr1, expr2 [, ...]) | Restituisce il primo argomento non Null. |
| decode(expr, search, result [, search, result]... [, valore predefinito]) | Confronta expr con ogni valore di ricerca e restituisce il risultato corrispondente. |
| get_json_object(json_txt, path) | Estrae un oggetto JSON da json_txt in corrispondenza dell'oggetto specificato path. |
| greatest(expr [, ...]) | Restituisce il valore massimo di tutti i parametri. |
| hash(expr1 [, expr2 ...]) | Restituisce un valore hash degli argomenti. |
| if(condition, true_value, false_value) | Restituisce true_value se condition è true, altrimenti restituisce false_value. |
| iff(condition, true_value, false_value) | Restituisce true_value se condition è true, altrimenti restituisce false_value. |
| ifnull(expr1, expr2) | Restituisce expr2 se expr1 è null o expr1 in caso contrario. |
| json_array_length(jsonArray) | Restituisce il numero di elementi nella matrice JSON più esterna. |
| least(expr [, ...]) | Restituisce il valore minimo di tutti i parametri. |
| monotonically_increasing_id() | Restituisce numeri interi a 64 bit che aumentano in modo monotonico. |
| nullif(expr1, expr2) | Restituisce NULL se expr1 uguale a expr2, in caso contrario restituisce expr1. |
| nvl(expr1, expr2) | Restituisce expr2 se expr1 è NULL o expr1 in caso contrario. |
| nvl2(expr1, expr2, expr3) | Restituisce expr2 se expr1 non è NULL, altrimenti expr3. |
| schema_of_json(json [, opzioni]) | Restituisce lo schema nel formato DDL della stringa JSON. |