Espressioni di filtro di Looker

Le espressioni di filtro sono un modo avanzato per filtrare le query di Looker. Puoi utilizzare le espressioni di filtro nei seguenti modi:

Questa pagina elenca i valori che puoi inserire per un filtro che utilizza l'opzione di condizione corrisponde (avanzata) in un'esplorazione di Looker. A seconda del tipo di filtro e dell'input per il valore del filtro, Looker potrebbe convertire l'opzione Corrispondenze (avanzato) in una condizione di filtro più appropriata.

Informazioni importanti sulle espressioni di filtro

Tieni presente le seguenti note quando utilizzi le espressioni di filtro di Looker:

  • Le espressioni di filtro in questa pagina sono supportate anche per alcuni tipi di filtri in Looker Studio quando il connettore Looker fa riferimento a un'esplorazione di Looker come origine dati e il filtro utilizza una condizione Corrisponde (avanzato). La condizione Corrispondenze (avanzata) si comporta in modo leggermente diverso in Looker Studio rispetto a un'esplorazione di Looker. Looker potrebbe convertire la condizione corrispondenze (avanzata) in una condizione più appropriata, in base all'input dell'utente. Tuttavia, Looker Studio utilizza l'opzione Corrisponde (avanzato) come condizione generica quando l'input dell'utente non è appropriato per le altre condizioni di filtro supportate da Looker Studio, ma Looker Studio non converte la condizione.
  • Nelle esplorazioni, i filtri di base utilizzano alcune frasi il cui significato è diverso dalle espressioni di filtro documentate in questa pagina.
  • Quando utilizzi le espressioni di filtro in LookML, inserisci l'espressione tra virgolette (consulta la pagina della documentazione filters per un utilizzo corretto). Ciò è particolarmente importante per i valori logici come NULL. Quando utilizzi le espressioni di filtro nella sezione Esplora di Looker, non devi racchiuderle tra virgolette.
  • Le espressioni di filtro non sono supportate con le concessioni di accesso. Per ulteriori informazioni, consulta la pagina della documentazione relativa a access_grant.

Espressioni di filtro per ogni tipo di filtro

Inserisci i seguenti esempi come valori di filtro nei filtri di esplorazione di Looker che utilizzano l'opzione di condizione Corrispondenze (avanzato). Le espressioni di filtro sono supportate per i seguenti tipi di filtri:

Stringa

Esempio Descrizione
FOO è uguale a "FOO", esattamente
FOO,BAR è uguale a "FOO" o "BAR", esattamente
%FOO% contiene "FOO", corrisponde a "buffone" e "fast food"
FOO% inizia con "FOO", corrisponde a "foolish" e "food", ma non a "buffoon" o "fast food"
%FOO termina con "FOO", corrisponde a "buffoo" e "fast foo", ma non a "buffoon" o "fast food"
F%OD inizia con "F" e termina con "OD", corrisponde a "fast food"
EMPTY La stringa è vuota (contiene zero caratteri) o è null (nessun valore)
NULL value is null (quando viene utilizzato come parte di un'espressione di filtro LookML, inserisci NULL tra virgolette, come mostrato nella pagina di documentazione filters)
-FOO non è uguale a "FOO" (è qualsiasi valore tranne "FOO"), corrisponde a "pizza", "trash", "fun", ma non a "foo"
-FOO,-BAR non è uguale a "FOO" o "BAR", corrisponde a qualsiasi valore tranne "FOO" e "BAR"
-%FOO% non contiene "FOO", non corrisponde a "buffoon" o "fast food"
-FOO% non inizia con "FOO", non corrisponde a "foolish" o "food"
-%FOO non termina con "FOO", non corrisponde a "buffoo" o "fast foo"
-EMPTY La stringa non è vuota (contiene almeno un carattere)
-NULL il valore della colonna non è nullo (quando viene utilizzato come parte di un'espressione di filtro LookML, inserisci -NULL tra virgolette, come mostrato nella pagina di documentazione filters)
FOO%,BAR inizia con "FOO" o è esattamente "BAR", corrisponde a "food" e a "bar", ma non a "barfood"
FOO%,-FOOD inizia con "FOO" ma non è "FOOD"
_UF contiene un singolo carattere seguito da "UF", corrisponde a "buffoon"

Inclusione di caratteri speciali nei filtri delle stringhe

Tieni presente queste regole per l'inclusione di caratteri speciali nei filtri delle stringhe:

  • Per includere ", % o _, aggiungi come prefisso il carattere di escape ^. Ad esempio: ^", ^% e ^_
  • Per includere un - iniziale, esegui l'escape come ^-. Questa operazione è necessaria solo se - è il primo carattere; non è necessario eseguire l'escape di - se si trova all'interno della stringa.
  • Per includere ^, esegui l'escape come ^^.
  • Per includere una virgola in un filtro di stringa UI normale, aggiungi il prefisso barra rovesciata alla virgola, \. Ad esempio: Santa Cruz\, CA.
  • Per includere una virgola con l'opzione Corrispondenze (avanzate) in un filtro, anteponi alla virgola il carattere di escape, ^. Ad esempio: Santa Cruz^, CA.
  • Per includere una virgola in un'espressione di filtro in LookML, anteponi il carattere di escape ^. Ad esempio:
  field: filtered_count {
      type: count
      filters: [city: "Santa Cruz^, CA"]
    }

Data e ora

Il filtro delle date di Looker consente di utilizzare frasi in inglese anziché funzioni di data SQL.

Struttura di base dei filtri per data e ora

Per i seguenti esempi:

  • {n} è un numero intero.
  • {interval} è un incremento di tempo, ad esempio ore, giorni, settimane o mesi.

    La formulazione che utilizzi determina se il {interval} includerà periodi di tempo parziali o solo completi. Ad esempio, l'espressione 3 days include il giorno parziale corrente e i due giorni precedenti. L'espressione 3 days ago for 3 days include i tre giorni completi precedenti ed esclude il giorno corrente parziale. Per ulteriori informazioni, consulta la sezione Date relative.

  • {time} può specificare un orario formattato come AAAA-MM-GG HH:MM:SS o AAAA/MM/GG HH:MM:SS oppure una data formattata come AAAA-MM-GG o AAAA/MM/GG. Quando utilizzi il formato AAAA-MM-GG, assicurati di includere entrambe le cifre per il mese e il giorno, ad esempio 2016-01. Il troncamento di un mese o di un giorno a una sola cifra viene interpretato come un offset, non come una data. Ad esempio, 2016-1 viene interpretato come 2016 meno un anno, ovvero 2015.

Queste sono tutte le combinazioni possibili di filtri per data:

Combinazione Esempio Note
this {interval} this month Puoi utilizzare this week, this month, this quarter o this year. Tieni presente che this day non è supportato. Se vuoi ottenere i dati del giorno corrente, puoi utilizzare today.
{n} {interval} 3 days
{n} {interval} ago 3 days ago
{n} {interval} ago for {n} {interval} 3 months ago for 2 days
before {n} {interval} ago before 3 days ago
before {time} before 2018-01-01 12:00:00 before non include l'ora specificata. L'espressione before 2018-01-01 restituirà i dati di tutte le date precedenti al 1° gennaio 2018, ma non quelli del 1° gennaio 2018.
after {time} after 2018-10-05 after include l'ora specificata. Pertanto, l'espressione after 2018-10-05 restituirà i dati del 5/10/2018 e di tutte le date successive.
{time} to {time} 2018-05-18 12:00:00 to

2018-05-18 14:00:00
Il valore iniziale dell'ora è incluso, mentre il secondo no. Pertanto, l'espressione 2018-05-18 12:00:00 to 2018-05-18 14:00:00 restituirà i dati con l'ora "2018-05-18 12:00:00" fino a "2018-05-18 13:59:59".
this {interval} to {interval} this year to second Viene utilizzato l'inizio di ogni intervallo. Ad esempio, l'espressione this year to second restituisce i dati dall'inizio dell'anno in cui viene eseguita la query fino all'inizio del secondo in cui viene eseguita la query. this week to day restituisce i dati dall'inizio della settimana in cui viene eseguita la query all'inizio del giorno in cui viene eseguita la query.
{time} for {n} {interval} 2018-01-01 12:00:00 for 3 days
today today
yesterday yesterday
tomorrow tomorrow
{day of week} Monday Se specifichi un giorno della settimana con un campo Data gruppo di dimensioni, viene restituita la data più recente che corrisponde al giorno della settimana specificato. Ad esempio, l'espressione Dimension Group Date matches (advanced) Monday restituisce il lunedì più recente.

In questo contesto, puoi utilizzare anche {day of week} con le parole chiave before e after. Ad esempio, l'espressione Dimension Group Date matches (advanced) after Monday restituisce l'ultimo lunedì e tutto ciò che segue. L'espressione Dimension Group Date matches (advanced) before Monday restituisce tutti i giorni precedenti l'ultimo lunedì, ma non l'ultimo lunedì.

Se specifichi un giorno della settimana con un campo Giorno della settimana del gruppo di dimensioni, vengono restituiti tutti i giorni che corrispondono al giorno della settimana specificato. Pertanto, l'espressione Dimension Group Day of Week matches (advanced) Monday restituisce tutti i lunedì.
next {week, month, quarter, fiscal quarter, year, fiscal year} next week La parola chiave next è unica in quanto richiede uno degli intervalli elencati in precedenza e non funziona con altri intervalli.
{n} {interval} from now 3 days from now
{n} {interval} from now for {n} {interval} 3 days from now for 2 weeks

I filtri per data possono anche essere combinati:

  • Per ottenere la logica OR: digita più condizioni nello stesso filtro, separate da virgole. Ad esempio, today, 7 days ago significa "oggi o 7 giorni fa".
  • Per ottenere la logica AND:digita le condizioni, una alla volta, in più filtri di data o ora. Ad esempio, puoi inserire after 2014-01-01 in un filtro Data creazione e before 2 days ago in un filtro Ora creazione. Ciò significherebbe "1° gennaio 2014 e dopo, e prima di 2 giorni fa".

Date assolute

I filtri per data assoluta utilizzano i valori di data specifici per generare i risultati della query. Questi sono utili quando crei query per intervalli di date specifici.

Esempio Descrizione
2018/05/29 in un momento qualsiasi del 29/05/2018
2018/05/10 for 3 days dal 10/05/2018 00:00:00 al 12/05/2018 23:59:59
after 2018/05/10 2018/05/10 00:00:00 e successive
before 2018/05/10 before 2018/05/10 00:00:00
2018/05 nell'intero mese di maggio 2018
2018/05 for 2 months nei mesi di maggio e giugno 2018
2018/05/10 05:00 for 5 hours dal 10/05/2018 05:00:00 al 10/05/2018 09:59:59
2018/05/10 for 5 months dal 10/05/2018 00:00:00 al 09/10/2018 23:59:59
2018 intero anno 2018 (dal 01/01/2018 00:00:00 al 31/12/2018 23:59:59)
FY2018 intero anno fiscale a partire dal 2018 (se gli sviluppatori di Looker hanno specificato che l'anno fiscale inizia ad aprile, questo periodo va dal 01/04/2018 00:00 al 31/03/2019 23:59)
FY2018-Q1 il primo trimestre dell'anno fiscale a partire dal 2018 (se gli sviluppatori di Looker hanno specificato che l'anno fiscale inizia ad aprile, questo periodo va dal 01/04/2018 00:00:00 al 30/06/2018 23:59:59)

Date relative

I filtri per le date relative consentono di creare query con valori di date continuate relativi alla data corrente. Sono utili quando crei query che vengono aggiornate ogni volta che le esegui.

Per tutti gli esempi seguenti, supponi che oggi sia venerdì 18/05/2018 alle 18:30:02. In Looker, le settimane iniziano di lunedì, a meno che tu non modifichi questa impostazione con week_start_day.

Secondi

Esempio Descrizione
1 second il secondo corrente (2018/05/18 18:30:02)
60 seconds 60 secondi fa per 60 secondi (dal 18/05/2018 18:29:02 al 18/05/2018 18:30:01)
60 seconds ago for 1 second 60 secondi fa per 1 secondo (18/05/2018 18:29:02)

Minuti

Esempio Descrizione
1 minute il minuto corrente (dal 18/05/2018 18:30:00 alle 18:30:59)
60 minutes 60 minuti fa per 60 minuti (dal 18/05/2018 17:31:00 al 18/05/2018 18:30:59)
60 minutes ago for 1 minute 60 minuti fa per 1 minuto (dal 18/05/2018 17:30:00 al 18/05/2018 17:30:59)

Ore

Esempio Descrizione
1 hour l'ora corrente (dal 18/05/2018 alle 18:00 al 18/05/2018 alle 18:59)
24 hours la stessa ora del giorno di 24 ore prima per 24 ore (dal 17/05/2018 alle 19:00 al 18/05/2018 alle 18:59)
24 hours ago for 1 hour la stessa ora del giorno di 24 ore prima per 1 ora (dal 17/05/2018 alle 18:00 al 17/05/2018 alle 18:59)

Giorni

Esempio Descrizione
today il giorno corrente (dal 18/05/2018 00:00 al 18/05/2018 23:59)
2 days tutto il giorno di ieri e di oggi (dal 17/05/2018 alle 00:00 al 18/05/2018 alle 23:59)
1 day ago solo ieri (dal 17/05/2018 alle 00:00 al 17/05/2018 alle 23:59)
7 days ago for 7 days gli ultimi 7 giorni completi (dal 2018/05/11 00:00 al 2018/05/17 23:59)
today for 7 days il giorno corrente, a partire da mezzanotte, per 7 giorni a venire (dal 18/05/2018 alle 00:00 al 24/05/2018 alle 23:59)
last 3 days Da 2 giorni fa fino alla fine della giornata corrente (dal 16/05/2018 alle ore 00:00 al 18/05/2018 alle ore 23:59)
7 days from now 7 giorni nel futuro (dal 18/05/2018 alle ore 00:00 al 25/05/2018 alle ore 23:59)

Settimane

Esempio Descrizione
1 week dall'inizio della settimana corrente in poi (dal 14/05/2018 alle ore 00:00 al 20/05/2018 alle ore 23:59)
this week dall'inizio della settimana corrente in poi (dal 14/05/2018 alle ore 00:00 al 20/05/2018 alle ore 23:59)
before this week in qualsiasi momento fino all'inizio di questa settimana (prima del 14/05/2018 alle ore 00:00)
after this week in qualsiasi momento dopo l'inizio di questa settimana (14/05/2018 00:00 e successive)
next week il lunedì successivo per una settimana (dal 21/05/2018 alle ore 00:00 al 27/05/2018 alle ore 23:59)
2 weeks a partire da lunedì di una settimana fa (dal 07/05/2018 alle 00:00 al 20/05/2018 alle 23:59)
last week sinonimo di "1 settimana fa"
1 week ago da lunedì di una settimana fa in poi per una settimana (dal 07/05/2018 alle ore 00:00 al 13/05/2018 alle ore 23:59)

Mesi

Esempio Descrizione
1 month il mese corrente (dal 01/05/2018 alle ore 00:00 al 31/05/2018 alle ore 23:59)
this month sinonimo di "0 mesi fa" (dal 01/05/2018 alle ore 00:00 al 31/05/2018 alle ore 23:59)
2 months gli ultimi due mesi (dal 01/04/2018 alle ore 00:00 al 31/05/2018 alle ore 23:59)
last month tutto il mese di aprile 2018
2 months ago tutto il mese di marzo 2018
before 2 months ago tutti i dati precedenti al 01/03/2018
next month tutto il mese di giugno 2018
2 months from now tutto il mese di luglio 2018
6 months from now for 3 months Da novembre 2018 a gennaio 2019

Trimestri

Esempio Descrizione
1 quarter il trimestre corrente (dal 01/04/2018 00:00 al 30/06/2018 23:59)
this quarter Sinonimo di "0 trimestri fa" (dal 01/04/2018 00:00 al 30/06/2018 23:59)
2 quarters gli ultimi due trimestri (dal 01/01/2018 00:00 al 30/06/2018 23:59)
last quarter tutto il primo trimestre (dal 01/01/2018 00:00 al 31/03/2018 23:59)
2 quarters ago tutto il quarto trimestre dell'anno scorso (dal 01/10/2017 alle ore 00:00 al 31/12/2017 alle ore 23:59)
before 2 quarters ago tutto il tempo prima del quarto trimestre dell'anno scorso
next quarter tutto il trimestre successivo (dal 01/07/2018 00:00 al 30/09/2018 23:59)
2018-07-01 for 1 quarter tutto il terzo trimestre (dal 01/07/2018 00:00 al 30/09/2018 23:59)
2018-Q4 tutto il quarto trimestre (dal 01/10/2018 00:00 al 31/12/2018 23:59)

Anni

Esempio Descrizione
1 year tutto l'anno in corso (dal 01/01/2018 00:00 al 31/12/2018 23:59)
this year tutto l'anno in corso (dal 01/01/2018 00:00 al 31/12/2018 23:59)
next year tutto l'anno successivo (dal 01/01/2019 00:00 al 31/12/2019 23:59)
2 years gli ultimi due anni (dal 01/01/2017 alle ore 00:00 al 31/12/2018 alle ore 23:59)
last year tutto il 2017
2 years ago tutto il 2016
before 2 years ago tutto il periodo precedente al 01/01/2016 (non include i giorni compresi tra il 01/01/2016 e il 18/05/2016)

Booleano

Il filtro in base ai valori di tipo vero o falso in Looker richiede di sapere con quale tipo di valore vero o falso stai interagendo.

Esempio Descrizione
yes o Yes campo restituisce il valore true

Sviluppatori di Looker: per le dimensioni type: yesno utilizza le lettere minuscole, per i parametri filters (come quelli utilizzati in una misura o utilizzati in un always_filter) utilizza le lettere maiuscole
no o No il campo restituisce il valore false

Sviluppatori di Looker: per le dimensioni type: yesno utilizza le lettere minuscole, per i parametri filters (come quelli utilizzati in una misura o utilizzati in un always_filter) utilizza le lettere maiuscole
TRUE Il campo contiene true (per i campi che contengono valori booleani del database)
FALSE Il campo contiene il valore false (per i campi che contengono valori booleani del database)

Numero

I filtri sui numeri supportano sia le espressioni in linguaggio naturale (ad esempio, 3 to 10) sia gli operatori relazionali (ad esempio, >20). Looker supporta l'operatore OR per esprimere più intervalli di filtri (ad esempio, 3 to 10 OR 30 to 100). L'operatore AND può essere utilizzato per esprimere intervalli numerici con operatori relazionali (ad esempio, >=3 AND <=10) per specificare un intervallo. I filtri sui numeri possono anche utilizzare la notazione algebrica degli intervalli per filtrare i campi numerici.

Esempio Descrizione
5 è esattamente 5
NOT 5

<>5

!=5
è qualsiasi valore tranne 5
1, 3, 5, 7 è uno dei valori 1, 3, 5 o 7, esattamente
NOT 66, 99, 4 non è uno dei valori 66, 99 o 4, esattamente
>1 AND <100, NOT 2 è maggiore di 1 e minore di 100, non è 2
NOT >1, 2, <100 è minore o uguale a 1, non è 2 ed è maggiore o uguale a 100 (Looker riconosce che questa è una condizione impossibile e scriverà invece l'SQL `IS NULL`)
5, NOT 6, NOT 7 è 5, non è 6 o 7
5.5 to 10

>=5.5 AND <=10
è pari o superiore a 5,5, ma anche pari o inferiore a 10
NOT 3 to 80.44

<3 OR >80.44
è inferiore a 3 o superiore a 80,44
1 to

>=1
è pari a 1 o un numero superiore
to 10

<=10
è 10 o meno
>10 AND <=20 OR 90 è maggiore di 10 e minore o uguale a 20 oppure è esattamente 90
>=50 AND <=100 OR >=500 AND <=1000 è compreso tra 50 e 100 inclusi o tra 500 e 1000 inclusi
NULL non contiene dati (quando viene utilizzato come parte di un'espressione di filtro LookML, inserisci NULL tra virgolette, come mostrato nella pagina di documentazione filters)
NOT NULL contiene alcuni dati (quando viene utilizzato come parte di un'espressione di filtro LookML, inserisci NOT NULL tra virgolette, come mostrato nella pagina della documentazione filters)
(1, 7) interpretato come 1 < x < 7, dove gli endpoint non sono inclusi. Sebbene questa notazione assomigli a una coppia ordinata, in questo contesto si riferisce all'intervallo su cui stai lavorando.
[5, 90] interpretato come 5 <= x <= 90, dove gli endpoint sono inclusi
(12, 20] interpretato come 12 < x <= 20, dove 12 non è incluso, ma 20 è incluso
[12, 20) interpretato come 12 <= x < 20, dove 12 è incluso, ma 20 non è incluso
(500, inf) interpretato come x > 500, dove 500 non è incluso e l'infinito è sempre espresso come "aperto" (non incluso). inf può essere omesso e (500, inf) può essere scritto come (500,)
(-inf, 10] interpretato come x <= 10, dove 10 è incluso e l'infinito è sempre espresso come "aperto" (non incluso). inf può essere omesso e (-inf, 10] può essere scritto come (,10]
[0,9],[20,29] i numeri compresi tra 0 e 9 inclusi o tra 20 e 29 inclusi
[0,10],20 Da 0 a 10 inclusi o 20
NOT (3,12) interpretato come x < 3 e x > 12

Località

Le espressioni di filtro per la località si basano su latitudine e longitudine, ma possono accettare un linguaggio naturale per definire i riquadri e i cerchi entro i quali limitare una ricerca.

Esempio Descrizione
36.97, -122.03 la posizione si trova esattamente a latitudine 36,97 e longitudine 122,03
40 miles from 36.97, -122.03 la posizione si trova entro 64 km dalla latitudine 36,97 e dalla longitudine -122,03
inside box from 72.33, -173.14 to 14.39, -61.70 la posizione si trova all'interno di un riquadro il cui angolo nord-ovest si trova a latitudine 72,33, longitudine -173,14 e il cui angolo sud-est si trova a latitudine 14,39, longitudine -61,70
NOT NULL (works the same as -NULL) la località ha sia una latitudine non nulla sia una longitudine non nulla (quando viene utilizzata come parte di un'espressione di filtro LookML, inserisci NOT NULL tra virgolette, come mostrato nella pagina di documentazione filters)
-NULL (works the same as NOT NULL) la località ha sia una latitudine non nulla sia una longitudine non nulla (quando viene utilizzata come parte di un'espressione di filtro LookML, inserisci -NULL tra virgolette, come mostrato nella pagina di documentazione filters)
NULL la località ha una latitudine nulla, una longitudine nulla o entrambe sono nulle (quando viene utilizzata come parte di un'espressione di filtro LookML, inserisci NULL tra virgolette, come mostrato nella pagina di documentazione filters)

Unità di misura supportate

Per filtrare in un'area intorno a una determinata posizione, puoi utilizzare queste unità:

  • Metri
  • Piedi
  • Chilometri
  • Miles

Le unità di misura singolari non sono supportate. Ad esempio, il filtro per un raggio di un miglio deve essere scritto within 1 miles of 36.97, -122.03.

Valori degli attributi utente

Per utilizzare il valore di un attributo utente in un'espressione di filtro, fai riferimento all'attributo utente con la _user_attributes variabile Liquid utilizzando la sintassi richiesta dal dialetto del database:

{{ _user_attributes['name_of_attribute'] }}

Ad esempio, supponiamo che tu debba applicare un prefisso sf_ al valore dell'attributo utente salesforce_username perché è così che i valori vengono archiviati nel tuo database. Per aggiungere il prefisso al valore dell'attributo utente, puoi aggiungere un filtro Corrisponde (avanzato) nel campo pertinente e utilizzare la variabile Liquid _user_attributes nell'espressione del filtro nel seguente modo:


sf_{{_user_attributes['salesforce_username']}}

Puoi utilizzare lo stesso pattern per inserire gli attributi utente nei filtri della dashboard e nei filtri degli elementi della dashboard di LookML.