Funzioni e operatori di Looker

Se l'amministratore ti ha concesso le autorizzazioni per creare i calcoli delle tabelle, puoi utilizzare le seguenti funzionalità per eseguire rapidamente funzioni comuni senza dover creare espressioni di Looker:

  • Calcoli rapidi per eseguire rapidamente calcoli comuni su campi numerici che si trovano in una tabella dati di Explore (Esplora)

Se l'amministratore ti ha concesso le autorizzazioni per creare i campi personalizzati, puoi utilizzare le seguenti funzionalità per eseguire rapidamente funzioni comuni senza dover creare espressioni di Looker:

Le espressioni Looker (dette anche Lexp) vengono utilizzate per eseguire calcoli per:

Una parte sostanziale di queste espressioni è rappresentata dalle funzioni e dagli operatori che puoi utilizzare al loro interno. Le funzioni e gli operatori possono essere suddivisi in alcune categorie di base:

Alcune funzioni sono disponibili solo per i calcoli tabulari

Le espressioni di Looker per i filtri personalizzati e i campi personalizzati non supportano le funzioni di Looker che convertono i tipi di dati, aggregano i dati da più righe o fanno riferimento ad altre righe o colonne pivot. Queste funzioni sono supportate solo per i calcoli delle tabelle (inclusi i calcoli tabulari utilizzati nel parametro expression di un test dei dati).

Questa pagina è organizzata in modo da chiarire quali funzioni e operatori sono disponibili a seconda del punto in cui viene utilizzata un'espressione di Looker.

Funzioni e operatori matematici

Le funzioni e gli operatori matematici possono funzionare in due modi:

  • Alcune funzioni matematiche eseguono calcoli in base a una singola riga. Ad esempio, l'arrotondamento, la radice quadrata, la moltiplicazione e funzioni simili possono essere utilizzate per i valori in una singola riga, restituendo un valore specifico per ciascuna riga. Tutti gli operatori matematici, come +, vengono applicati una riga alla volta.
  • Altre funzioni matematiche, come le medie e i totali correnti, vengono applicate su molte righe. Queste funzioni prendono molte righe e le riducono a un singolo numero, quindi mostrano lo stesso numero su ogni riga.

Funzioni per qualsiasi espressione Looker

Funzione Syntax Finalità
abs abs(value) Restituisce il valore assoluto di value.

Per un esempio, vedi la deviazione standard e il rilevamento di anomalie in serie temporali semplici utilizzando i calcoli tabulari.
ceiling ceiling(value) Restituisce il numero intero più piccolo maggiore di o uguale a value.
exp exp(value) Restituisce e alla potenza di value.
floor floor(value) Restituisce il numero intero più grande minore di o uguale a value.
ln ln(value) Restituisce il logaritmo naturale di value.
log log(value) Restituisce il logaritmo in base 10 di value.
mod mod(value, divisor) Restituisce il resto della divisione di value per divisor.
power power(base, exponent) Restituisce base elevato alla potenza di exponent.

Per un esempio, vedi la deviazione standard e il rilevamento di anomalie in serie temporali semplici utilizzando i calcoli tabulari.
rand rand() Restituisce un numero casuale compreso tra 0 e 1.
round round(value, num_decimals) Restituisce value arrotondato a num_decimals cifre decimali.

Per esempi che utilizzano round, consulta i post della scheda Community sull'utilizzo di pivot_index nei calcoli tabulari e su deviazione standard e rilevamento di anomalie in semplici serie temporali usando i calcoli tabulari.
sqrt sqrt(value) Restituisce la radice quadrata di value.

Per un esempio, vedi la deviazione standard e il rilevamento di anomalie in serie temporali semplici utilizzando i calcoli tabulari.

Funzioni solo per calcoli tabulari

Molte di queste funzioni operano su molte righe e considerano solo le righe restituite dalla query.

Funzione Syntax Finalità
acos acos(value) Restituisce il coseno inverso di value.
asin asin(value) Restituisce il seno inverso di value.
atan atan(value) Restituisce la tangente inversa di value.
beta_dist beta_dist(value, alpha,
beta, cumulative)
Restituisce la posizione di value sulla distribuzione beta con i parametri alpha e beta. Se cumulative = yes, restituisce la probabilità cumulativa.
beta_inv beta_inv(probability,
alpha, beta)
Restituisce la posizione probability sulla distribuzione beta cumulativa inversa con i parametri alpha e beta.
binom_dist binom_dist(num_successes,
num_tests,
probability, cumulative)
Restituisce la probabilità di ottenere num_successes esiti positivi in num_tests test con la data probability di successo. Se cumulative = yes, restituisce la probabilità cumulativa.
binom_inv binom_inv(num_tests,
test_probability,
target_probability)
Restituisce il numero più piccolo k tale che binom(k, num_tests,
test_probability, yes)
>= target_probability.
chisq_dist chisq_dist(value, dof,
cumulative)
Restituisce la posizione di value sulla distribuzione gamma con dof gradi di libertà. Se cumulative = yes, restituisce la probabilità cumulativa.
chisq_inv chisq_inv(probability, dof) Restituisce la posizione di probability sulla distribuzione gamma cumulativa inversa con dof gradi di libertà.
chisq_test chisq_test(actual,
expected)
Restituisce la probabilità del test chi quadrato per l'indipendenza tra i dati actual e expected. actual può essere una colonna o una colonna di elenchi e expected deve essere dello stesso tipo.
combin combin(set_size,
selection_size)
Restituisce il numero di modi per scegliere elementi selection_size da un insieme di dimensioni set_size.
confidence_norm confidence_norm(alpha,
stdev, n)
Restituisce metà dell'ampiezza dell'intervallo di confidenza normale con livello di significatività alpha, deviazione standard stdev e dimensione del campione n.
confidence_t confidence_t(alpha,
stdev, n)
Restituisce metà dell'ampiezza dell'intervallo di confidenza della distribuzione t dello studente con livello di significatività alpha, una deviazione standard stdev e la dimensione del campione n.
correl correl(column_1, column_2) Restituisce il coefficiente di correlazione di column_1 e column_2.
cos cos(value) Restituisce il coseno di value.
count count(expression) Restituisce il conteggio dei valori non null nella colonna definita da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il conteggio in ogni elenco.
count_distinct count_distinct(expression) Restituisce il conteggio dei diversi valori non null nella colonna definita da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il conteggio in ogni elenco.
covar_pop covar_pop(column_1,
column_2)
Restituisce la covarianza della popolazione di column_1 e column_2.
covar_samp covar_samp(column_1,
column_2)
Restituisce la covarianza campionaria di column_1 e column_2.
degrees degrees(value) Converte value da radianti a gradi.
expon_dist expon_dist(value, lambda,
cumulative)
Restituisce la posizione value sulla distribuzione esponenziale con il parametro lambda. Se cumulative = yes, restituisce la probabilità cumulativa.
f_dist f_dist(value, dof_1,
dof_2, cumulative)
Restituisce la posizione value sulla distribuzione F con i parametri dof_1 e dof_2. Se cumulative = yes, restituisce la probabilità cumulativa.
f_inv f_inv(probability, dof_1,
dof_2)
Restituisce la posizione di probability sulla distribuzione F cumulativa inversa con i parametri dof_1 e dof_2.
fact fact(value) Restituisce il fattoriale di value.
gamma_dist gamma_dist(value, alpha,
beta, cumulative)
Restituisce la posizione di value sulla distribuzione gamma con i parametri alpha e beta. Se cumulative = yes, restituisce la probabilità cumulativa.
gamma_inv gamma_inv(probability,
alpha, beta)
Restituisce la posizione di probability sulla distribuzione gamma cumulativa inversa con i parametri alpha e beta.
geomean geomean(expression) Restituisce la media geometrica della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la media geometrica di ogni elenco.
hypgeom_dist hypgeom_dist
(sample_successes,
sample_size,
population_successes,
population_size,
cumulative)
Restituisce la probabilità di ottenere sample_successes dal sample_size specificato, il numero di population_successes e il population_size. Se cumulative = yes, restituisce la probabilità cumulativa.
intercept intercept(y_column,
x_column)
Restituisce l'intercetta della retta di regressione lineare attraverso i punti determinati da y_column e x_column.

Per un esempio, consulta il post della scheda Community su come effettuare previsioni in Looker con i calcoli tabulari.
kurtosis kurtosis(expression) Restituisce l'eccesso di curtosi campionaria della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce l'eccesso di curtosi campionaria di ogni elenco.
large large(expression, k) Restituisce il k° valore più grande della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il k° valore più alto di ogni elenco.
match match(value, expression) Restituisce il numero di riga della prima occorrenza di value nella colonna creata da expression a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la posizione di value in ogni elenco.
max max(expression) Restituisce il numero massimo della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il massimo di ogni elenco.

Per esempi che utilizzano max, consulta i post della scheda Community sull'uso degli elenchi nei calcoli tabulari e su Raggruppamento per dimensione nei calcoli tabulari.
mean mean(expression) Restituisce la media della colonna creata da expression a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la media di ogni elenco.

Per esempi che utilizzano mean, consulta il post della scheda Calcolo delle medie mobili e il post della scheda Community su Deviazione standard e rilevamento di anomalie in semplici serie temporali mediante i calcoli tabulari.
median median(expression) Restituisce la mediana della colonna creata da expression a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la mediana di ogni elenco.
min min(expression) Restituisce il minimo della colonna creata da expression a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il minimo di ogni elenco.
mode mode(expression) Restituisce la modalità della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la modalità di ogni elenco.
multinomial multinomial(value_1,
value_2, ...)
Restituisce il fattoriale della somma degli argomenti diviso per il prodotto di ognuno dei fattoriali.
negbinom_dist negbinom_dist(num_failures,
num_successes,
probability,
cumulative)
Restituisce la probabilità di ottenere num_failures operazioni non riuscite prima di num_successes operazioni riuscite, con il valore di probability specificato. Se cumulative = yes, restituisce la probabilità cumulativa.
norm_dist norm_dist(value, mean,
stdev, cumulative)
Restituisce la posizione di value sulla distribuzione normale con i mean e le stdev specificati. Se cumulative = yes, restituisce la probabilità cumulativa.
norm_inv norm_inv(probability, mean,
stdev)
Restituisce la posizione di probability sulla distribuzione cumulativa normale inversa.
norm_s_dist norm_s_dist(value,
cumulative)
Restituisce la posizione di value sulla distribuzione normale standard. Se cumulative = yes, restituisce la probabilità cumulativa.
norm_s_inv norm_s_inv(probability) Restituisce la posizione di probability sulla distribuzione cumulativa normale inversa.
percent_rank percent_rank(column, value) Restituisce la posizione di value in column come percentuale da 0 a 1 inclusi, dove column è la colonna, il campo, l'elenco o l'intervallo contenente il set di dati da considerare; value è la colonna con il valore per cui verrà determinato il ranking percentuale.

Esempio di utilizzo:

percent_rank(${view_name.field_1}, ${view_name.field_1})
percent_rank(list(1, 2, 3), ${view_name.field_1})
percent_rank(list(1, 2, 3), 2)
percentile percentile(value_column,
percentile_value)
Restituisce il valore della colonna creata da expression corrispondente al valore percentile_value specificato, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il valore percentile per ogni elenco. percentile_value deve essere compreso tra 0 e 1; altrimenti restituisce null.
pi pi() Restituisce il valore di pi greco.
poisson_dist poisson_dist(value, lambda,
cumulative)
Restituisce la posizione di value sulla distribuzione di Poisson con il parametro lambda. Se cumulative = yes, restituisce la probabilità cumulativa.
product product(expression) Restituisce il prodotto della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il prodotto di ogni elenco.
radians radians(value) Converte value da gradi a radianti.
rank rank(value, expression) Restituisce il ranking di value nella colonna creata da expression. Ad esempio, se vuoi classificare gli ordini in base al prezzo di vendita totale, puoi utilizzare rank(${order_items.total_sale_price},${order_items.total_sale_price}), che assegna un ranking per ciascun valore di order_items.total_sale_price nella query quando la confronti con l'intera colonna di order_items.total_sale_price della query. Nel caso in cui expression definisca più elenchi, questa funzione restituisce la dimensione relativa di value in ogni elenco.

Per un esempio, consulta il post della scheda Community sui ranghi con i calcoli tabulari.
rank_avg rank_avg(value, expression) Restituisce la posizione media di value nella colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il ranking medio di value in ogni elenco.
running_product running_product
(value_column)
Restituisce un prodotto in esecuzione dei valori in value_column.
running_total running_total(value_column) Restituisce il totale corrente dei valori in value_column.

Per un esempio, consulta la pagina delle best practice per la creazione di colonne totali con i calcoli tabulari.
sin sin(value) Restituisce il seno di value.
skew skew(expression) Restituisce l'asimmetria campionaria della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce l'asimmetria campionaria di ogni elenco.
slope slope(y_column, x_column) Restituisce la pendenza della retta di regressione lineare attraverso i punti determinati da y_column e x_column.

Per un esempio, consulta il post della scheda Community su come effettuare previsioni in Looker con i calcoli tabulari.
small small(expression, k) Restituisce il k° valore più basso della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il k° valore più basso di ogni elenco.
stddev_pop stddev_pop(expression) Restituisce la deviazione standard (popolazione) della colonna creata da expression a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la deviazione standard (popolazione) di ogni elenco.
stddev_samp stddev_samp(expression) Restituisce la deviazione standard (campione) della colonna creata da expression a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la deviazione standard (campione) di ogni elenco.
sum sum(expression) Restituisce la somma della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la somma di ogni elenco.

Per esempi che utilizzano sum, consulta le pagine sulle best practice per l'aggregazione tra righe (totali riga) e Come calcolare la percentuale di totale.
t_dist t_dist(value, dof,
cumulative)
Restituisce la posizione di value sulla distribuzione t dello studente con dof gradi di libertà. Se cumulative = yes, restituisce la probabilità cumulativa.
t_inv t_inv(probability, dof) Restituisce la posizione di probability sulla distribuzione cumulativa normale inversa con dof gradi di libertà.
t_test t_test(column_1, column_2,
tails, type)
Restituisce il risultato di un test t dello studente sui dati di column_1 e column_2, utilizzando 1 o 2 tails. type: 1 = accoppiato, 2 = omoscedatico, 3 = eteroscedastico.
tan tan(value) Restituisce la tangente di value.
var_pop var_pop(expression) Restituisce la varianza (popolazione) della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la varianza (popolazione) di ogni elenco.
var_samp var_pop(expression) Restituisce la varianza (campione) della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce la varianza (campione) di ogni elenco.
weibull_dist weibull_dist(value, shape,
scale, cumulative)
Restituisce la posizione di value sulla distribuzione Weibull con i parametri shape e scale. Se cumulative = yes, restituisce la probabilità cumulativa.
z_test z_test(data, value, stdev) Restituisce il valore p a una coda del test z utilizzando data e stdev esistenti sulla media ipotizzata value.

Operatori per qualsiasi espressione Looker

Puoi utilizzare i seguenti operatori matematici standard:

Operatore Syntax Finalità
+ value_1 + value_2 Aggiunge value_1 e value_2.
- value_1 - value_2 Sottrai value_2 da value_1.
* value_1 * value_2 Moltiplica value_1 e value_2.
/ value_1 / value_2 Divide value_1 per value_2.

Funzioni di stringa

Le funzioni stringa operano su frasi, parole o lettere, collettivamente chiamate "stringhe". Puoi utilizzare le funzioni stringa per maiuscola per parole e lettere, estrarre parti di una frase, verificare se una parola o una lettera è in una frase oppure sostituire elementi di una parola o una frase. Le funzioni stringa possono essere utilizzate anche per formattare i dati restituiti nella tabella.

Funzioni per qualsiasi espressione Looker

Funzione Syntax Finalità
concat concat(value_1, value_2, ...) Restituisce value_1, value_2, ..., value_n uniti come stringa.
contains contains(string, search_string) Restituisce Yes se string contiene search_string e No in caso contrario.
length length(string) Restituisce il numero di caratteri in string.
lower lower(string) Restituisce string con tutti i caratteri convertiti in minuscolo.
position position(string, search_string) Restituisce l'indice iniziale di search_string in string, se esiste, altrimenti in 0.
replace replace(string, old_string, new_string) Restituisce string con tutte le occorrenze di old_string sostituite con new_string.
substring substring(string, start_position, length) Restituisce la sottostringa di string, a partire da start_position, composta da length caratteri. start_position inizia da 1, con 1 che indica il primo carattere nella stringa, 2 che indica il secondo carattere nella stringa e così via.
upper upper(string) Restituisce string con tutti i caratteri convertiti in maiuscolo.

Funzioni solo per calcoli tabulari

Funzione Syntax Finalità
split split(string, delimeter) Restituisce un elenco di stringhe in string suddivise per delimiter.
to_number to_number(string) Restituisce il numero rappresentato da string o null se la stringa non può essere convertita.
to_string to_string(value) Restituisce la rappresentazione stringa di value oppure una stringa vuota se value è null.

Funzioni di data

Le funzioni data consentono di utilizzare date e ore.

Funzioni per qualsiasi espressione Looker

Funzione Syntax Finalità
add_days add_days(number, date) Aggiunge number giorni a date
add_hours add_hours(number, date) Aggiunge number ore a date.
add_minutes add_minutes(number, date) Aggiunge number minuti a date.
add_months add_months(number, date) Aggiunge number mesi a date.
add_seconds add_seconds(number, date) Aggiunge number secondi a date.
add_years add_years(number, date) Aggiunge number anni a date.
date date(year, month, day) Restituisce la data "year-month-day" o null se la data non è valida.
date_time date_time(year, month, day,
hours, minutes, seconds)
Restituisce la data
"year-month-day hours:minutes:seconds" o null se la data non sarebbe valida.
diff_days diff_days(start_date, end_date) Restituisce il numero di giorni compresi tra start_date e end_date.

Per un esempio, consulta il post della scheda Utilizzo delle date nei calcoli tabulari.
diff_hours diff_hours(start_date, end_date) Restituisce il numero di ore tra start_date e end_date.
diff_minutes diff_minutes(start_date, end_date) Restituisce il numero di minuti compresi tra start_date e end_date.

Per un esempio, consulta il post della scheda Utilizzo delle date nei calcoli tabulari.
diff_months diff_months(start_date, end_date) Restituisce il numero di mesi compreso tra start_date e end_date.

Per un esempio, consulta il post della scheda Raggruppamento per dimensione nei calcoli tabulari.
diff_seconds diff_seconds(start_date, end_date) Restituisce il numero di secondi tra start_date e end_date.
diff_years diff_years(start_date, end_date) Restituisce il numero di anni compreso tra start_date e end_date.
extract_days extract_days(date) Estrae i giorni da date.

Per un esempio, consulta il post della scheda Utilizzo delle date nei calcoli tabulari.
extract_hours extract_hours(date) Estrae le ore da date.
extract_minutes extract_minutes(date) Estrae i minuti da date.
extract_months extract_months(date) Estrae i mesi da date.
extract_seconds extract_seconds(date) Estrae i secondi da date.
extract_years extract_years(date) Estrae gli anni da date.
now now() Restituisce la data e l'ora correnti.

Per esempi che utilizzano la funzione now, vedi i post della scheda Community sul calcolo della tabella Now() con una migliore gestione del fuso orario e uso delle date nei calcoli tabulari.
trunc_days trunc_days(date) Tronca date a giorni.
trunc_hours trunc_hours(date) Tronca date a ore.
trunc_minutes trunc_minutes(date) Tronca date a minuti.
trunc_months trunc_months(date) Tronca date a mesi.
trunc_years trunc_years(date) Tronca date ad anni.

Funzioni solo per calcoli tabulari

Funzione Syntax Finalità
to_date to_date(string) Restituisce la data e l'ora corrispondenti a string (AAAA, AAAA-MM, AAAA-MM-GG, AAAA-MM-GG hh, AAAA-MM-GG hh:mm o AAAA-MM-GG hh:mm:ss).

Funzioni logiche, operatori e costanti logiche

Le funzioni logiche e gli operatori logici vengono utilizzati per valutare se qualcosa è vero o falso. Le espressioni che utilizzano questi elementi prendono un valore, lo valutano a fronte di determinati criteri, restituiscono Yes se i criteri sono soddisfatti e No se i criteri non sono soddisfatti. Esistono anche vari operatori logici per confrontare valori e combinare espressioni logiche.

Funzioni per qualsiasi espressione Looker

Funzione Syntax Finalità
case case(when(yesno_arg, value_if_yes), when(yesno_arg, value_if_yes), ..., else_value) AGGIUNTO 21,10 Consente la logica condizionale con più condizioni e risultati. Restituisce value_if_yes per la prima richiesta di when il cui valore yesno_arg è yes. Restituisce else_value se tutti i casi when sono no.
coalesce coalesce(value_1, value_2, ...) Restituisce il primo valore non null in value_1, value_2, ..., value_n se trovato e null in caso contrario.

Per esempi che utilizzano coalesce, consulta i post della scheda Community su creazione di un totale corrente per le righe con calcoli tabulari, Creazione di una percentuale di totale su righe con calcoli tabulari e Utilizzo di pivot_index nei calcoli tabulari.
if if(yesno_expression,
value_if_yes,
value_if_no)
Se yesno_expression restituisce Yes, restituisce il valore value_if_yes. In caso contrario, restituisce il valore value_if_no.

Per un esempio, consulta il post della scheda Raggruppamento per dimensione nei calcoli tabulari.
is_null is_null(value) Restituisce Yes se value è null e No in caso contrario.

Per un esempio, consulta la pagina della documentazione relativa alla creazione di espressioni di Looker. Per un altro esempio che utilizza is_null con l'operatore NOT, consulta la pagina della documentazione Utilizzo dei calcoli tabulari.

Operatori per qualsiasi espressione Looker

I seguenti operatori di confronto possono essere utilizzati con qualsiasi tipo di dati:

Operatore Syntax Finalità
= value_1 = value_2 Restituisce Yes se value_1 è uguale a value_2, altrimenti No.
!= value_1 != value_2 Restituisce Yes se value_1 non è uguale a value_2 e No in caso contrario.

È possibile utilizzare i seguenti operatori di confronto con numeri, date e stringhe:

Operatore Syntax Finalità
> value_1 > value_2 Restituisce Yes se value_1 è maggiore di value_2 e No in caso contrario.
< value_1 < value_2 Restituisce Yes se value_1 è inferiore a value_2, altrimenti No.
>= value_1 >= value_2 Restituisce Yes se value_1 è maggiore o uguale a value_2 e No in caso contrario.
<= value_1 <= value_2 Restituisce Yes se value_1 è minore o uguale a value_2, altrimenti No.

Puoi anche combinare le espressioni di Looker con questi operatori logici:

Operatore Syntax Finalità
AND value_1 AND value_2 Restituisce Yes se sia value_1 che value_2 sono Yes e No in caso contrario.
OR value_1 OR value_2 Restituisce Yes se value_1 o value_2 è Yes e No in caso contrario.
NOT NOT value Restituisce Yes se value è No e No in caso contrario.

Questi operatori logici devono essere in maiuscolo. Gli operatori logici scritti in minuscolo non funzioneranno.

Costanti logiche

Nelle espressioni di Looker puoi utilizzare le costanti logiche. Queste costanti sono sempre scritte in minuscolo e hanno i significati seguenti:

Costante Significato
yes Vero
no falso.
null Nessun valore

Tieni presente che le costanti yes e no sono i simboli speciali che significano vero o falso nelle espressioni di Looker. Se invece vengono racchiuse tra virgolette, come in "yes" e "no", vengono create stringhe letterali con questi valori.

Le espressioni logiche restituiscono un valore vero o falso senza richiedere una funzione if. Ad esempio:

if(${field} > 100, yes, no)

equivalente a questo:

${field} > 100

Puoi anche utilizzare null per non indicare nessun valore. Ad esempio, potresti stabilire se un campo è vuoto o assegnare un valore vuoto in una determinata situazione. Questa formula non restituisce alcun valore se il campo è minore di 1 oppure il valore del campo se è maggiore di 1:

if(${field} < 1, null, ${field})

Combinazione di operatori AND e OR

Gli operatori AND vengono valutati prima degli operatori OR, se non diversamente specifichi l'ordine con le parentesi. Pertanto, la seguente espressione senza parentesi aggiuntive:

if (
  ${order_items.days_to_process}>=4 OR
  ${order_items.shipping_time}>5 AND
  ${order_facts.is_first_purchase},
"review", "okay")

viene valutata come segue:

if (
  ${order_items.days_to_process}>=4 OR
  (${order_items.shipping_time}>5 AND ${order_facts.is_first_purchase}),
"review", "okay")

Funzioni posizionali

Durante la creazione dei calcoli tabulari, puoi utilizzare le funzioni di trasformazione posizionale per estrarre informazioni sui campi in diverse righe o colonne pivot. Puoi anche creare elenchi e recuperare l'indice della riga o della colonna pivot corrente.

Totali di righe e colonne solo per i calcoli tabulari

Se lo strumento Esplora contiene i totali, puoi fare riferimento ai valori totali per le colonne e le righe:

Funzione Syntax Finalità
:total ${field:total} Restituisce il totale della colonna del campo.
:row_total ${field:row_total} Restituisce il totale di riga del campo.

Alcune di queste funzioni usano le posizioni relative delle righe, quindi la modifica dell'ordinamento delle righe ha effetto sui risultati delle funzioni.

Funzione Syntax Finalità
index index(expression, n) Restituisce il valore dell'n° elemento della colonna creato da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce il n° elemento di ogni elenco.
list list(value_1, value_2, ...) Crea un elenco con i valori specificati.

Per un esempio, consulta il post della scheda Utilizzare gli elenchi nei calcoli tabulari.
lookup lookup(value, lookup_column,
result_column)
Restituisce il valore in result_column che si trova sulla stessa riga di value in lookup_column.
offset offset(column, row_offset) Restituisce il valore della riga (n + row_offset) in column, dove n è il numero di riga corrente.

Per esempi che utilizzano offset, consulta la pagina delle best practice per il calcolo della percentuale di modifica precedente e percentuale con calcoli tabulari.
offset_list offset_list(column, row_offset,
num_values)
Restituisce un elenco dei valori num_values a partire dalla riga (n + row_offset) in column, dove n è il numero di riga corrente.

Per un esempio, consulta il post della scheda Calcolo delle medie mobili.
row row() Restituisce il numero di riga corrente.

Alcune di queste funzioni usano le posizioni relative delle colonne pivot, quindi la modifica dell'ordinamento delle dimensioni sottoposte a pivot ha effetto sui risultati di quelle funzioni.

Funzione Syntax Finalità
pivot_column pivot_column() Restituisce l'indice della colonna pivot corrente.
pivot_index pivot_index(expression, pivot_index) Valuta expression nel contesto della colonna pivot nella posizione pivot_index (1 per il primo pivot, 2 per il secondo pivot e così via). Restituisce null per i risultati senza pivot.

Per esempi che utilizzano pivot_index, consulta i post della scheda Community sull'uso di pivot_index nei calcoli tabulari e sulla creazione di una percentuale di totale con le righe con calcoli tabulari.
pivot_offset pivot_offset(pivot_expression, col_offset) Restituisce il valore di pivot_expression nella posizione (n + col_offset), dove n è l'attuale posizione della colonna pivot. Restituisce null per i risultati senza pivot.

Per esempi che utilizzano pivot_offset, consulta la pagina Creazione di un totale corrente tra le righe con calcoli tabulari e la pagina delle best practice Calcolo della percentuale di variazione precedente e percentuale con calcoli tabulari.
pivot_offset_list pivot_offset_list(pivot_expression,
col_offset, num_values)
Restituisce un elenco dei valori num_values in pivot_expression a partire dalla posizione (n + col_offset), dove n è l'indice pivot corrente. Restituisce null per i risultati senza pivot.
pivot_row pivot_row(expression) Restituisce i valori sottoposti a pivot di expression come un elenco. Restituisce null per i risultati senza pivot.

Per esempi che utilizzano pivot_row, consulta le pagine sulle best practice per l'aggregazione tra righe (totali riga) e Come calcolare la percentuale di totale.
pivot_where pivot_where(select_expression, expression) Restituisce il valore di expression per la colonna pivot che soddisfa select_expression o null in modo univoco se questa colonna univoca non esiste.

Le funzioni pivot specifiche che utilizzi determinano se il calcolo tabulare viene visualizzato accanto a ogni colonna sottoposta a pivot oppure come colonna singola alla fine della tabella.

Funzioni di filtro per filtri personalizzati e campi personalizzati

Le funzioni di filtro consentono di utilizzare le espressioni di filtro per restituire valori in base ai dati filtrati. Le funzioni di filtro funzionano in filtri personalizzati, filtri su misure personalizzate e dimensioni personalizzate, ma non sono valide nei calcoli tabulari.

Funzione Syntax Finalità
matches_filter matches_filter(field, `filter_expression`) Restituisce Yes se il valore del campo corrisponde all'espressione di filtro, in caso contrario No.