Creazione di espressioni 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 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:

Espressioni Looker

Le espressioni di Looker (a volte definite Lexp) vengono utilizzate per eseguire calcoli per:

Un'espressione di Looker viene creata da una combinazione di questi elementi:

  • NULL: il valore NULL indica che non esistono dati e può essere utile quando vuoi verificare che qualcosa sia vuoto o che non esista.

  • Una costante: una costante è un valore immutabile che fornisci. Un numero come 7 o una stringa come Completed sono costanti.

  • Un campo Looker:un riferimento a un campo Looker, che include dimensioni, misure e calcoli tabulari.

  • Un operatore Looker:esistono diversi tipi di operatori, elencati nella pagina della documentazione relativa alle funzioni e agli operatori di Looker:

    • Operatori matematici (come +, -, * e /)
    • Operatori di confronto (come =, > e <=)
    • Operatori logici (come AND, OR e NOT)
  • Una funzione Looker:è di natura simile alle funzioni di Excel. Le funzioni ti consentono di trasformare i dati o i dati di riferimento in modi complessi. Tutte le funzioni disponibili sono elencate nella pagina della documentazione Funzioni e operatori di Looker.

Creazione di espressioni di Looker

Calcoli tabulari, campi personalizzati e filtri personalizzati utilizzano l'editor espressioni di Looker. Durante la digitazione dell'espressione, Looker ti chiede di inserire funzioni, operatori e nomi di campi che puoi utilizzare.

Suggerimento pratico: se sei uno sviluppatore Looker che crea un test di dati per verificare la logica del modello, puoi utilizzare l'editor espressioni di Looker per creare un'espressione di Looker e poi copiarla nel parametro expression del test dei dati.

Visualizzazione di tutti i suggerimenti

Accedi all'editor di espressioni di Looker in un'esplorazione creando un calcoli tabulari, un 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 al momento è selezionato un campo nell'esplorazione, Looker mostra un cerchio nero a sinistra del campo e il campo viene visualizzato in cima all'elenco.

Inizia a digitare per ridurre l'elenco in modo da includere gli elementi che ti interessano.

L'editor per i campi personalizzati mostra i campi Esplora attualmente in uso, se sono compatibili con la funzione del campo personalizzato.

Aggiungere un campo

Per includere un campo Looker nell'espressione, inizia a digitare il nome del campo. Mentre digiti, l'editor restringe la ricerca a un elenco di campi e funzioni che contengono il testo digitato. Puoi digitare il nome del campo così come viene visualizzato nella pagina Esplora oppure puoi utilizzare il 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.

Puoi leggere istruzioni più dettagliate sull'utilizzo dei campi nella sezione Utilizzo dei campi di questa pagina.

Somma dei totali

Se stai creando un'espressione basata su un'esplorazione in cui sono visualizzati i totali, puoi anche includere i totali di colonne e righe nell'espressione. I totali delle colonne vengono visualizzati nell'editor con la parola Total davanti all'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 di riga, nell'editor viene visualizzata la parola Totali riga davanti al nome del campo, mentre nel nome del campo in LookML viene aggiunto :row_total alla fine del nome del campo.

Aggiungere operatori

Puoi aggiungere operatori logici come AND, OR e NOT all'espressione, se necessario. In genere gli operatori AND vengono valutati prima degli operatori OR, ma puoi sostituire questo comportamento usando le parentesi. Puoi anche utilizzare operatori di confronto (come >, = e <=) e operatori matematici (come + e *).

Quando il cursore si trova su un operatore, le note per il corretto utilizzo vengono visualizzate a destra dell'espressione nel riquadro informazioni.

Per istruzioni più dettagliate sull'uso degli operatori, consulta la sezione Utilizzo degli operatori in questa pagina.

Aggiungere funzioni

Per includere una funzione Looker nell'espressione, inizia a digitare il nome della funzione. Mentre digiti, l'editor restringe la ricerca a un elenco di campi e funzioni che contengono il testo digitato.

Le funzioni possono essere costruite con argomenti (o variabili) che richiedono un determinato tipo, come un campo, un numero o sì/no. Quando il cursore si trova su una funzione, puoi controllare le note visualizzate a destra dell'espressione nel riquadro informazioni per capire quali argomenti devi fornire e di che tipo devono essere.

Puoi consultare l'elenco completo delle funzioni offerte da Looker nella pagina della documentazione Funzioni e operatori di Looker.

Puoi leggere istruzioni più dettagliate sull'utilizzo delle funzioni nella sezione Utilizzo delle funzioni in questa pagina.

Utilizzo dei suggerimenti sugli errori e del riquadro delle informazioni

Mentre digiti un'espressione, Looker visualizza un riquadro delle informazioni sulla destra. Questo riquadro fornisce documentazione e suggerimenti, in particolare se è presente un errore nell'espressione.

L'editore fornisce:

  • Evidenziazione degli errori: Looker sottolinea in rosso le parti dell'espressione che non sono ancora corrette.

  • Suggerimenti e dettagli errore: la parte superiore del riquadro delle informazioni fornisce suggerimenti su cosa aggiungere nell'espressione. e ti viene spiegato perché si è verificato un errore. Se sono presenti più errori, l'errore visualizzato dipende dalla posizione del cursore.

  • Documentazione:nella parte inferiore del riquadro delle informazioni, Looker visualizza la documentazione sulla funzione o sull'operatore con cui stai lavorando, in base alla posizione del cursore. Ad esempio, mentre digiti il primo argomento di una funzione if(), Looker fornisce le informazioni che il primo argomento deve restituire come vero o falso. Puoi fare clic sul nome della funzione in quella sezione per accedere alla relativa documentazione.

Includere i commenti

Puoi includere commenti nelle espressioni di Looker iniziando la riga di commento con #.

Utilizzo dei campi

In alcuni casi è necessario 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, includerlo in una funzione o molte altre possibilità.

Come descritto sopra, digita il nome del campo nell'editor dell'espressione e Looker ti aiuterà a trovare il modo corretto per farvi riferimento. Quando aggiungi un campo a un'espressione, Looker utilizza l'identificatore LookML del campo, che è simile a ${view_name.field_name}. Questo identificatore non corrisponde sempre al nome del campo nel selettore campi, ma va bene se non sai di cosa si tratta. Digita il nome del campo come viene visualizzato nel selettore di campi e l'editor delle espressioni mostrerà il nome del selettore di campi e l'identificatore LookML insieme.

Esistono diversi modi per recuperare un valore:

  • Ottenere un valore dalla stessa riga: il modo più semplice per utilizzare un campo è fare riferimento direttamente a un campo. Ad esempio, l'espressione potrebbe utilizzare ${product.category}. In questo caso, per una riga specifica, recupera la categoria di prodotto da quella riga.

  • Ottieni un valore da un'altra riga:puoi anche ottenere il valore di un campo da un'altra riga. Ad esempio, potresti voler utilizzare la logica "per una determinata riga, recupera la categoria di prodotto dalla riga precedente". A tal fine, puoi utilizzare una funzione di offset (consulta questo elenco delle funzioni di posizionamento). La funzione di offset potrebbe avere il seguente aspetto: offset(${product.category}, -1).

  • Recupero di un valore da una colonna sottoposta a pivot: puoi ottenere i valori anche da colonne sottoposte a pivot. Ad esempio, potresti voler utilizzare la logica "per ogni riga specifica, recupera le vendite totali dalla prima colonna sottoposta a pivot". Per lavorare con le colonne pivot, devi utilizzare le funzioni pivot (consulta questo elenco delle funzioni pivot). La funzione pivot potrebbe essere la seguente: pivot_index(${order.total_sales}, 1).

  • Recupero di un totale da una riga o colonna:se hai aggiunto totali a Esplorazione, puoi ottenere i valori totali dalla colonna o dalla riga aggiungendo :total (per i totali di colonna) o :row_total (per i totali di riga) al nome del campo, utilizzando il formato ${field_name:total}. Ad esempio, se vuoi ottenere una percentuale del totale di un conteggio Ordini, puoi creare un calcolo tabulare come il seguente: ${orders.count} / ${orders.count:total}.

Quando fai riferimento ai campi in un filtro personalizzato, puoi utilizzare solo le dimensioni e non misure, totali o calcoli tabulari. Inoltre, non puoi fare riferimento a valori in altre righe o colonne sottoposte a pivot. Questo perché Looker deve essere in grado di trasformare il filtro in SQL per recuperare i dati.

Non tutte le opzioni di data e ora sono supportate nei filtri personalizzati o nei campi personalizzati. Per ulteriori informazioni, consulta la descrizione del parametro gruppo di dimensioni.

Quando fai riferimento ai campi in un calcolo tabulare, puoi fare riferimento a qualsiasi valore di qualsiasi dimensione, misura o altro calcolo tabulare.

Utilizzo degli operatori

Le espressioni di Looker possono includere operatori logici, di confronto e matematici per creare condizioni diverse:

  • Operatori logici (come AND, OR e NOT)
  • Operatori di confronto (come > e <)
  • Operatori matematici (come + e -)

Se non diversamente specificato tra parentesi, la logica AND viene considerata prima della logica OR. L'espressione seguente 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")

In Looker devi usare yes e no anziché true e false. Queste costanti logiche non sono la stessa cosa delle parole "yes" e "no", che sono racchiuse tra virgolette. Per ulteriori dettagli, consulta la descrizione delle costanti logiche.

Utilizzo delle funzioni

Le espressioni di Looker spesso includono una o più funzioni che consentono di recuperare determinati dati o calcolare determinate cose. Sono simili per natura alle funzioni di Excel.

Le funzioni assumono la forma di un nome seguito da due parentesi, ad esempio my_function(). Potrebbe essere necessario inserire informazioni tra queste parentesi, separate da virgole. Questi bit di informazioni sono chiamati "argomenti" e hanno il seguente aspetto: my_function(argument_1, argument_2).

Ad esempio, la funzione now non accetta argomenti e fornisce la data e l'ora correnti. Lo usi nel seguente modo: now().

La funzione round prevede un argomento, ovvero un numero. Lo usi nel seguente modo: round(3.2). Il risultato è 3.

Esistono due modi per sapere quali argomenti dovrai fornire, se presenti:

  • Il riquadro delle informazioni visualizzato a destra dell'editor delle espressioni fornisce documentazione sulla funzione che stai scrivendo. Puoi fare clic sul nome della funzione per accedere alla relativa documentazione.
  • Puoi anche andare direttamente alla pagina della documentazione relativa alle funzioni e agli operatori di Looker e cercare la funzione che vuoi utilizzare.

Prendiamo come esempio la funzione contains, che dispone di una documentazione simile alla seguente:

Funzione Sintassi Finalità
contiene contains(string, search_string) Restituisce Yes se string contiene search_string, in caso contrario No

Come puoi vedere, sono necessari due argomenti. I nomi sono string e search_string, ma questo non significa che devi digitare le parole esatte "stringa" e "stringa_ricerca" nella funzione. Questi sono solo nomi degli argomenti che sostituirai con qualcosa. Leggendo lo scopo, vediamo che string deve essere un campo o un altro valore in cui vogliamo effettuare la ricerca in, mentre search_string è la cosa che vogliamo cercare. Un esempio potrebbe essere:

contains(${customer.feedback_text}, "great")

Se la parola "ottimo" compare nel feedback del cliente, questa funzione restituisce un risultato Yes. In caso contrario, il risultato sarà No.

Puoi inserire le funzioni all'interno di altre funzioni per gestire la logica complessa. Se il risultato della funzione interna è appropriato per gli argomenti della funzione esterna, funzionerà. Ad esempio:

contains(
  if(
    is_null(${customer.feedback_text}),
    ${customer.comment_text},
    ${customer.feedback_text}
  ),
"great")

In questo caso abbiamo nidificato la funzione is_null all'interno di una funzione if, che si trova all'interno di una funzione contains. L'operazione funziona nel seguente modo:

  1. La funzione is_null() verifica la presenza di testo del feedback del cliente.
  2. Successivamente, la funzione if() utilizza quel risultato e restituisce il testo del feedback del cliente, se presente, o altrimenti il testo del commento del cliente.
  3. Infine, la funzione contains() utilizza il testo restituito dalla funzione if() e lo cerca la parola "great".

A livello logico, questa espressione significa: "Se è presente un feedback del cliente, esegui la ricerca. In caso contrario, cercalo nei commenti dei clienti. In entrambi i casi, cerca la parola 'grande' ".

I filtri personalizzati e i campi personalizzati possono utilizzare la maggior parte delle funzioni, ma non possono impiegare alcune funzioni matematiche o funzioni che fanno riferimento ad altre righe o colonne pivot. La pagina della documentazione relativa a funzioni e operatori di Looker ti consente di scoprire quali funzioni puoi utilizzare.

È possibile utilizzare qualsiasi funzione in un calcolo tabulare. Puoi anche utilizzare qualsiasi funzione nel parametro expression di un test dei dati, poiché il parametro expression è essenzialmente un calcolo tabulare che genera un valore yesno (booleano).