Le espressioni di Looker sono formule che utilizzi per eseguire calcoli personalizzati e applicare logiche avanzate in Looker. Utilizza le espressioni di Looker per creare calcoli tabulari dinamici, campi personalizzati, filtri personalizzati e test dei dati. Questa funzionalità ti aiuta a estrarre approfondimenti specifici e a personalizzare l'analisi dei dati. Questa guida descrive come creare e utilizzare le espressioni di Looker in modo efficace.
Scorciatoie per le funzioni comuni
Prima di creare espressioni di Looker, controlla se la tua attività può essere completata utilizzando le scorciatoie integrate:
- Calcoli tabulari: se l'amministratore ti ha concesso le autorizzazioni per creare calcoli tabulari, puoi utilizzare i calcoli di scorciatoia per eseguire rapidamente calcoli comuni sui campi numerici nella tabella dei dati di un Explore (Esplora).
- Campi personalizzati: se l'amministratore ti ha concesso le
autorizzazioni
per creare campi personalizzati, puoi utilizzare quanto segue:
- Gruppi personalizzati per raggruppare
i valori in etichette personalizzate senza dover sviluppare la logica
CASE WHENinsqlparametri otype: casecampi. - Contenitori personalizzati per raggruppare
dimensioni di tipo numerico in livelli personalizzati, senza bisogno di sviluppare
type: tiercampi LookML.
- Gruppi personalizzati per raggruppare
i valori in etichette personalizzate senza dover sviluppare la logica
Espressioni di Looker
Le espressioni di Looker vengono utilizzate per eseguire calcoli per:
Un'espressione Looker è costituita da una combinazione di questi elementi:
NULL: il valoreNULLindica che non sono presenti dati e può essere utile quando vuoi verificare che qualcosa sia vuoto o non esista.Una costante: una costante è un valore invariabile che fornisci. Un numero come
7o una stringa comeCompletedsono costanti.Un campo di Looker: un riferimento a un campo di Looker , che include dimensioni, misure e calcoli tabulari.
Un operatore di Looker: per un elenco degli operatori disponibili, vedi Funzioni e operatori di Looker. Gli operatori supportati includono le seguenti categorie:
- Operatori matematici (ad esempio
+,-,*e/) - Operatori di confronto (ad esempio
=,>, e<=) - Operatori logici (ad esempio
AND,OReNOT)
- Operatori matematici (ad esempio
Una funzione di Looker: simili alle funzioni dei fogli di lavoro, le funzioni consentono di trasformare i dati o di fare riferimento ai dati in modi complessi. Per un elenco delle funzioni disponibili, vedi Funzioni e operatori di Looker.
Creare espressioni di Looker
I calcoli tabulari, i campi personalizzati, e i filtri personalizzati utilizzano l' editor di espressioni Looker. Mentre digiti l'espressione, Looker ti suggerisce funzioni, operatori e nomi di campi che potresti voler utilizzare.
Visualizzare tutti i suggerimenti
Accedi all'editor di espressioni Looker in un'esplorazione creando un calcolo tabulare, campo personalizzato o un filtro personalizzato.
Digita uno spazio per visualizzare un elenco di tutti i campi, le funzioni e gli operatori tra cui puoi scegliere. Se un campo è attualmente selezionato in Explore (Esplora), Looker visualizza un punto nero a sinistra del campo e il campo nella parte superiore dell'elenco.
Inizia a digitare nell'editor espressioni Looker per ridurre l'elenco agli elementi che ti interessano.
L'editor per i campi personalizzati mostra i campi di Explore (Esplora) attualmente in uso, se sono compatibili con la funzione del campo personalizzato.
Aggiungere un campo
Per includere un campo di Looker nell'espressione, inizia a digitare il nome del campo. Man mano che digiti, l'editor restringe la ricerca a un elenco di campi e funzioni che contengono ciò che hai digitato. Puoi digitare il nome del campo così come appare nella pagina Explore (Esplora) oppure puoi utilizzare il suo nome LookML, se lo conosci.
Quando selezioni un campo dall'elenco, Looker lo aggiunge all'espressione utilizzando il nome LookML nel formato ${view_name.field_name}. In questo modo, tutti i campi hanno nomi univoci nell'espressione.
Aggiungere i totali
Se stai creando un'espressione basata su un Explore (Esplora) in cui hai
visualizzato i totali,
puoi includere anche i totali di colonne e righe nell'espressione. I totali delle colonne vengono visualizzati nell'editor con la parola Totale prima dell'iterazione LookML del nome del campo. Ad esempio, per un campo denominato Count,
Looker assegna al totale della colonna per quel campo il nome
Count - Total.
Il nome LookML per i totali è nel formato ${view_name.field_name:total},
dove :total viene aggiunto alla fine del nome del campo.
Per i totali delle righe, le parole Totali righe vengono visualizzate prima del nome del campo nell'editor. Nel nome LookML del campo, :row_total viene aggiunto alla fine
del nome del campo, ad esempio ${view_name.field_name:row_total}.
Aggiungere operatori
Se necessario, puoi aggiungere operatori logici come AND, OR e NOT all'espressione. In genere, gli operatori AND vengono valutati prima degli operatori OR, ma puoi ignorare questo comportamento utilizzando le parentesi. Puoi anche utilizzare
operatori di confronto (ad esempio >, = e <=) e operatori matematici
(ad esempio + e *).
Quando tieni il puntatore su un operatore, nel riquadro delle informazioni vengono visualizzate le note per l'uso corretto.
Aggiungere funzioni
Per includere una funzione di Looker nell'espressione, inizia a digitare il nome della funzione. Man mano che digiti, l'editor restringe la ricerca a un elenco di campi e funzioni che contengono ciò che hai digitato.
Le funzioni possono essere costituite da argomenti (o variabili) che richiedono un determinato tipo, ad esempio un campo, un numero o sì/no. Quando tieni il puntatore su una funzione, controlla le note nel riquadro delle informazioni per capire quali argomenti devi fornire e di che tipo devono essere.
Per un elenco completo delle funzioni, vedi Funzioni e operatori di Looker.
Utilizzare i suggerimenti per gli errori e il riquadro delle informazioni
Looker visualizza un riquadro delle informazioni accanto all'editor di espressioni Looker. Questo riquadro fornisce documentazione e suggerimenti, soprattutto se l'espressione contiene un errore.
Il riquadro delle informazioni fornisce le seguenti informazioni:
Evidenziazione degli errori: Looker sottolinea in rosso le parti dell' espressione che non sono ancora corrette.
Suggerimenti e dettagli degli errori: Looker fornisce suggerimenti su cosa aggiungere all'espressione. Se si verifica un errore, spiega perché.
Documentazione: Looker visualizza la documentazione relativa alla funzione o all'operatore con cui stai lavorando. Ad esempio, mentre digiti il primo argomento di una funzione
if, Looker indica che il primo argomento deve essere valutato comeyesono. Fai clic sul nome della funzione per visualizzarne la documentazione.
Includere commenti
Puoi includere commenti nelle espressioni di Looker iniziando la riga del commento con # nell'editor espressioni.
Utilizzare i campi
A volte vuoi utilizzare il valore di un campo (una dimensione, una misura o un calcolo tabulare) in un'espressione. Potresti voler aggiungere il valore del campo a qualcos'altro, verificare che abbia un determinato valore o includerlo in una funzione.
Come descritto in Aggiungere un campo, puoi digitare il nome del campo
nell'editor espressioni e Looker ti aiuterà a trovare il formato di riferimento corretto. Quando aggiungi un campo a un'espressione, Looker utilizza l'identificatore LookML del campo, ad esempio ${view_name.field_name}. Digita il nome del campo così come appare nel selettore campi e l'editor espressioni visualizza il nome del selettore campi insieme all'identificatore LookML.
Esistono diversi modi per recuperare un valore:
Recuperare un valore dalla stessa riga: il modo più semplice per utilizzare un campo è farvi riferimento direttamente, ad esempio
${product.category}. In questo modo si fa riferimento al valore di quel campo nella riga corrente.Recuperare un valore da una riga diversa: puoi anche recuperare il valore di un campo da una riga diversa. Ad esempio, per recuperare la categoria di prodotto dalla riga precedente, utilizza una funzione di offset come
offset(${product.category}, -1). Per un elenco delle funzioni posizionali, vedi Funzioni posizionali.Recuperare un valore da una colonna pivot: per recuperare i valori dalle colonne pivot, utilizza le funzioni pivot come
pivot_index(${order.total_sales}, 1). Per un elenco delle funzioni pivot, vedi Funzioni pivot.Recuperare un totale da una riga o una colonna: se hai visualizzato i totali in Explore (Esplora), puoi recuperare i valori totali aggiungendo
:total(per i totali delle colonne) o:row_total(per i totali delle righe) al nome del campo, utilizzando il formato${field_name:total}. Ad esempio:${orders.count} / ${orders.count:total}.
Utilizzare gli operatori
Le espressioni di Looker possono includere operatori logici, di confronto e matematici per creare condizioni diverse:
- Operatori logici (ad esempio
AND,OReNOT) - Operatori di confronto (ad esempio
>e<) - Operatori matematici (ad esempio
+e-)
A meno che non specifichi diversamente con le parentesi, la logica AND viene valutata prima della logica OR. 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:
if (
${order_items.days_to_process}>=4 OR
(${order_items.shipping_time}>5 AND ${order_facts.is_first_purchase}),
"review", "okay")
In Looker, utilizza yes e no anziché true e false.
Queste costanti logiche non sono la stessa cosa delle stringhe letterali "yes"
e "no". Per ulteriori informazioni, vedi
Costanti logiche.
Utilizzare le funzioni
Le espressioni di Looker spesso includono una o più funzioni per recuperare o calcolare i dati. Sono simili alle funzioni dei fogli di lavoro.
Le funzioni hanno la forma di un nome seguito da parentesi, ad esempio my_function(). I valori passati all'interno delle parentesi sono argomenti, ad esempio my_function(argument_1, argument_2).
Ad esempio, la now
funzione non accetta argomenti e restituisce la data e l'ora correnti: now().
La round funzione
accetta un argomento numerico: round(3.2). Il risultato è 3.
Per sapere quali argomenti fornire:
- Il riquadro delle informazioni accanto all'editor espressioni fornisce la documentazione per la funzione attiva.
- Per un elenco completo delle funzioni, vedi Funzioni e operatori di Looker.
Considera la contains
funzione:
| Funzione | Sintassi | Finalità |
|---|---|---|
| contains {:#function-contains} | contains(string, search_string) |
Restituisce Yes se string contiene search_string, altrimenti restituisce No. |
La funzione contains richiede due argomenti: string e search_string.
L'argomento string rappresenta il campo o il testo in cui eseguire la ricerca, mentre search_string
rappresenta il termine da cercare:
contains(${customer.feedback_text}, "great")
Se "great" (ottimo) viene visualizzato nel feedback del cliente, la funzione restituisce Yes.
In caso contrario, restituisce No.
Puoi nidificare le funzioni all'interno di altre funzioni:
contains(
if(
is_null(${customer.feedback_text}),
${customer.comment_text},
${customer.feedback_text}
),
"great")
Questa espressione viene valutata in tre passaggi:
- La funzione
is_nullverifica se il testo del feedback del cliente è vuoto. - La funzione
ifrestituisce il testo del feedback, se presente; in caso contrario, restituisce il testo del commento. - La funzione
containscerca la parola "great" (ottimo) nel testo restituito.
Dal punto di vista logico, questa espressione significa: "Se è presente un feedback del cliente, cerca in quel testo. In caso contrario, cerca nei commenti dei clienti. In entrambi i casi, cerca la parola 'great' (ottimo)."