Funzioni e operatori di Looker

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

  • Calcoli scorciatoie per eseguire rapidamente calcoli comuni sui campi numerici che si trovano nella tabella dati di un'esplorazione

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

Le espressioni Looker (talvolta definite Lexp) vengono utilizzate per eseguire calcoli per:

Una parte importante di queste espressioni sono le funzioni e gli 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 dati di più righe o fanno riferimento ad altre righe o colonne pivot. Queste funzioni sono supportate solo per i calcoli tabulari (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 di dove utilizzi l'espressione di Looker.

Funzioni e operatori matematici

Le funzioni e gli operatori matematici funzionano 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, operano su molte righe. Queste funzioni utilizzano molte righe e le riducono a un unico numero, poi mostrano lo stesso numero su ogni riga.

Funzioni per qualsiasi espressione di Looker

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

Ad esempio, consulta il post della community Deviazione standard e rilevamento di outlier di serie temporali semplici con 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.

Ad esempio, consulta il post della community Deviazione standard e rilevamento di outlier di serie temporali semplici con 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 posizioni decimali.

Per esempi che utilizzano round, consulta i post della scheda Community sull'utilizzo di pivot_index nei calcoli tabulari e nei post della scheda Community Deviazione standard e Rilevamento di valori anomali di serie temporali semplici con i calcoli tabulari.
sqrt sqrt(value) Restituisce la radice quadrata di value.

Ad esempio, consulta il post della community Deviazione standard e rilevamento di outlier di serie temporali semplici con i calcoli tabulari.

Funzioni solo per i calcoli tabulari

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

Funzione Sintassi 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 nella 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 di 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 successi nei test num_tests con il probability specificato. 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 nella 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 gli elementi selection_size da un insieme di dimensioni set_size.
confidence_norm confidence_norm(alpha, stdev, n) Restituisce metà della larghezza dell'intervallo di confidenza normale al livello di significatività alpha, alla deviazione standard stdev e alla dimensione del campione n.
confidence_t confidence_t(alpha, stdev, n) Restituisce metà della larghezza dell'intervallo di confidenza della distribuzione t di Student al livello di significatività alpha, alla deviazione standard stdev e alla 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 diversi da 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 di valori diversi da 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 del campione 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 di 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 di 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 nella 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. In questo 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, numero di population_successes e population_size specificati. 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 eseguire previsioni in Looker con i calcoli tabulari.
kurtosis kurtosis(expression) Restituisce l'eccesso di curtosi campione della colonna creata da expression, a meno che expression non definisca una colonna di elenchi, nel qual caso restituisce l'eccesso di curtosi campione 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. In tal caso, restituisce il k° valore più grande 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 e, in tal caso, restituisce la posizione di value in ogni elenco.
max max(expression) Restituisce il valore massimo della colonna creata da expression, a meno che expression non definisca una colonna di elenchi e, in tal caso, restituisce il valore massimo di ogni elenco.

Per esempi sull'utilizzo di max, consulta le sezioni Utilizzare gli elenchi nei calcoli tabulari e Raggruppamento in base a una dimensione nei calcoli tabulari per i post della scheda Community.
mean mean(expression) Restituisce la media della colonna creata da expression, a meno che expression non definisca una colonna di elenchi e in questo caso restituisce la media di ciascun elenco.

Per alcuni esempi relativi all'utilizzo di mean, consulta il post della scheda Community Calcolo delle medie mobili e il post della scheda Community Deviazione standard e rilevamento di anomalie nelle serie temporali semplici con i calcoli tabulari.
median median(expression) Restituisce la mediana della colonna creata da expression, a meno che expression non definisca una colonna di elenchi. In questo caso, restituisce la mediana di ogni elenco.
min min(expression) Restituisce il valore minimo della colonna creata da expression, a meno che expression non definisca una colonna di elenchi. In tal caso, restituisce il valore 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 ciascun elenco.
multinomial multinomial(value_1, value_2, ...) Restituisce il fattoriale della somma degli argomenti diviso per il prodotto di ogni fattoriale.
negbinom_dist negbinom_dist(num_failures, num_successes, probability, cumulative) Restituisce la probabilità di ottenere num_failures errori prima di ottenere num_successes successi, con il probability di successo 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 valori mean e 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 standard inversa.
percent_rank percent_rank(column, value) Restituisce il ranking 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 e 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; in caso contrario 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 avvelenamento 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 scontato totale, puoi utilizzare rank(${order_items.total_sale_price},${order_items.total_sale_price}), che fornisce un ranking per ogni valore order_items.total_sale_price nella query quando lo confronti con l'intera colonna di order_items.total_sale_price nella query. Nel caso in cui expression definisce più elenchi, questa funzione restituisce la dimensione relativa di value in ogni elenco.

Per un esempio, consulta il post della scheda Community Ranks con calcoli tabulari.
rank_avg rank_avg(value, expression) Restituisce il ranking medio di value nella colonna creata da expression, a meno che expression non definisca una colonna di elenchi. In tal caso, restituisce il ranking medio value in ogni elenco.
running_product running_product(value_column) Restituisce un prodotto corrente dei valori in value_column.
running_total running_total(value_column) Restituisce un totale corrente dei valori in value_column.

Per un esempio, consulta la pagina delle best practice sulla creazione di un totale corrente delle colonne con i calcoli tabulari.
sin sin(value) Restituisce il seno di value.
skew skew(expression) Restituisce l'asimmetria campione della colonna creata da expression, a meno che expression non definisca una colonna di elenchi. In questo caso, restituisce l'asimmetria campione 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 eseguire previsioni in Looker con i calcoli tabulari.
small small(expression, k) Restituisce il k° valore più piccolo della colonna creata da expression, a meno che expression non definisca una colonna di elenchi. In tal caso, restituisce il k° valore più piccolo 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 e in questo 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 e, in tal caso, restituisce la somma di ogni elenco.

Per alcuni esempi sull'utilizzo di sum, consulta le pagine Aggregazione su righe (totali riga) nei calcoli tabulari e Come calcolare la percentuale del totale.
t_dist t_dist(value, dof, cumulative) Restituisce la posizione di value nella distribuzione t di Student 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 di Student sui dati di column_1 e column_2, utilizzando 1 o 2 tails. type: 1 = coppia, 2 = omoscedastico, 3 = eteroscedatico.
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 di 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 i valori data e stdev esistenti sulla media ipotizzata value.

Operatori per qualsiasi espressione di Looker

Puoi utilizzare i seguenti operatori matematici standard:

Operatore Sintassi Finalità
+ value_1 + value_2 Aggiunge value_1 e value_2.
- value_1 - value_2 Sottrae value_2 da value_1.
* value_1 * value_2 Moltiplica value_1 per 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 mettere in maiuscolo parole e lettere, estrarre parti di una frase, controllare se una parola o una lettera è contenuta in una frase o sostituire gli elementi di una parola o di una frase. Le funzioni stringa possono essere utilizzate anche per formattare i dati restituiti nella tabella.

Funzioni per qualsiasi espressione di Looker

Funzione Sintassi Finalità
concat concat(value_1, value_2, ...) Restituisce value_1, value_2, ..., value_n uniti in un'unica stringa.
contains contains(string, search_string) Restituisce Yes se string contiene search_string e No in caso contrario. La funzione contains è sensibile alle maiuscole.
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 esistente, e in 0 in caso contrario.
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, che inizia in start_position, composta da length caratteri. start_position inizia da 1, con 1 che indica il primo carattere della stringa, 2 che indica il secondo carattere della stringa e così via.
upper upper(string) Restituisce string con tutti i caratteri convertiti in lettere maiuscole.

Funzioni solo per i calcoli tabulari

Funzione Sintassi 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 una rappresentazione stringa di value o una stringa vuota se value è null.

Funzioni di data

Le funzioni di data consentono di lavorare con date e ore.

Funzioni per qualsiasi espressione di Looker

Funzione Sintassi 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 è valida.
diff_days diff_days(start_date, end_date) Restituisce il numero di giorni compreso tra start_date e end_date.

Ad esempio, consulta il post della scheda Community sull'utilizzo delle date nei calcoli tabulari.
diff_hours diff_hours(start_date, end_date) Restituisce il numero di ore compreso tra start_date e end_date.
diff_minutes diff_minutes(start_date, end_date) Restituisce il numero di minuti compreso tra start_date e end_date.

Ad esempio, consulta il post della scheda Community sull'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 Community Raggruppamento per dimensione nei calcoli tabulari.
diff_seconds diff_seconds(start_date, end_date) Restituisce il numero di secondi compreso 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.

Ad esempio, consulta il post della scheda Community sull'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 di utilizzo di now, consulta i post della scheda Community relativi all'utilizzo della funzione di calcolo tabulare Now() e all'utilizzo delle date nei calcoli tabulari.
trunc_days trunc_days(date) Tronca date ai 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 ai mesi.
trunc_years trunc_years(date) Tronca date ad anni.

Funzioni solo per i calcoli tabulari

Funzione Sintassi 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

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

Funzioni per qualsiasi espressione di Looker

Funzione Sintassi Finalità
case case(when(yesno_arg, value_if_yes), when(yesno_arg, value_if_yes), ..., else_value) ADDED 21.10 Consente la logica condizionale con più condizioni e risultati. Restituisce value_if_yes per il primo caso when il cui valore yesno_arg è yes. Restituisce else_value se tutti i when casi 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 con l'uso di coalesce, consulta gli articoli della scheda Community Creare un totale corrente tra le righe con calcoli tabulari, Creare una percentuale del totale nelle righe con calcoli tabulari e Utilizzare pivot_index nei calcoli tabulari della scheda Community.
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 Community 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 Creazione di espressioni di Looker. Per un altro esempio in cui viene utilizzato is_null con l'operatore NOT, consulta la pagina della documentazione sull'utilizzo dei calcoli tabulari.

Operatori per qualsiasi espressione di Looker

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

Operatore Sintassi Finalità
= value_1 = value_2 Restituisce Yes se value_1 è uguale a value_2 e No in caso contrario.
!= value_1 != value_2 Restituisce Yes se value_1 è diverso da value_2, in caso contrario No.

I seguenti operatori di confronto possono essere utilizzati con numeri, date e stringhe:

Operatore Sintassi 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 e No in caso contrario.
>= 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 e No in caso contrario.

Puoi anche combinare espressioni di Looker con questi operatori logici:

Operatore Sintassi Finalità
AND value_1 AND value_2 Restituisce Yes se value_1 e value_2 sono entrambi Yes, altrimenti No.
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

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

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. Al contrario, l'utilizzo di virgolette come "yes" e "no" crea stringhe letterali con quei valori.

Le espressioni logiche restituiscono un valore vero o falso senza richiedere una funzione if. Ecco alcuni esempi:

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

equivale a:

${field} > 100

Puoi anche utilizzare null per non indicare alcun 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 è inferiore a 1 o il valore del campo se è maggiore di 1:

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

Combinazione degli operatori AND e OR

Gli operatori AND vengono valutati prima degli operatori OR, se non specifichi diversamente l'ordine tra parentesi. Ad esempio, 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 valutato come:

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

Funzioni posizionali

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

Totali di colonne e righe solo per i calcoli tabulari

Se Esplorazione contiene i totali, puoi fare riferimento ai valori totali per colonne e righe:

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

Alcune di queste funzioni utilizzano le posizioni relative delle righe, quindi la modifica dell'ordinamento delle righe influisce sui risultati delle funzioni.

Funzione Sintassi Finalità
index index(expression, n) Restituisce il valore dell'n° elemento della colonna creata da expression, a meno che expression non definisca una colonna di elenchi. In tal 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 Community sull'utilizzo degli elenchi nei calcoli tabulari.
lookup lookup(value, lookup_column, result_column) Restituisce il valore in result_column che si trova nella stessa riga di value che si trova 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 alcuni esempi di utilizzo di offset, consulta la pagina delle best practice Calcolo della percentuale della variazione precedente e percentuale con i 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.

Ad esempio, vedi il post della scheda Community Calcolo delle medie mobili.
row row() Restituisce il numero di riga corrente.

Alcune di queste funzioni utilizzano le posizioni relative delle colonne pivot, quindi la modifica dell'ordinamento delle dimensioni sottoposte a pivot influisce sui risultati di queste funzioni.

Funzione Sintassi 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 alla posizione pivot_index (1 per il primo pivot, 2 per il pivot e così via). Restituisce null per i risultati senza pivot.

Per esempi con l'uso di pivot_index, consulta gli articoli della scheda Community sull'utilizzo di pivot_index nei calcoli tabulari e su Creazione di una percentuale del totale nelle 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 è la posizione attuale della colonna pivot. Restituisce null per i risultati senza pivot.

Per esempi che utilizzano pivot_offset, consulta il post della scheda Community Creazione di un totale corrente tra le righe con calcoli tabulari e la pagina delle best practice per il calcolo della percentuale della variazione precedente e della percentuale con i 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 sotto forma di elenco. Restituisce null per i risultati senza pivot.

Per alcuni esempi sull'utilizzo di pivot_row, consulta le pagine Aggregazione su righe (totali riga) nei calcoli tabulari e Come calcolare la percentuale del totale.
pivot_where pivot_where(select_expression, expression) Restituisce il valore di expression per la colonna pivot che soddisfa in modo univoco select_expression o null se tale colonna univoca non esiste.

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

Funzioni di filtro per filtri e campi personalizzati

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

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