In alcune situazioni, potresti voler modificare il modo in cui Looker formatta le date.
Ad esempio, se crei esplorazioni e dashboard per utenti in Europa, tutte le date in formato numerico devono essere visualizzate nell'ordine Giorno-Mese-Anno. Ad esempio, il 7 giugno 2019 deve essere formattato come 07/06/2019 o Jun 07, 2019. Il formato predefinito di Looker visualizza la data come 2019-06-07. Sebbene tu possa utilizzare funzioni SQL come DATE_FORMAT() per modificare un formato di data, potresti non voler scrivere tutto in SQL semplice.
Utilizzo di Liquid nel parametro html
Puoi utilizzare la formattazione Liquid nel parametro html di una dimensione per modificare il formato di qualsiasi campo che utilizza un formato di data valido. Poiché Liquid prevede una data valida, è consigliabile utilizzare i periodi di tempo di un gruppo di dimensioni esistente. Non puoi modificare i numeri della settimana o del mese, perché vengono restituiti come numeri interi.
Ad esempio, puoi formattare ${created_date} in modo che venga visualizzato come Aug 23 22 anziché come 2022-08-23 predefinito di Looker:
dimension: date_formatted {
sql: ${created_date} ;;
html:{{ rendered_value | date: "%b %d, %y" }};;
}
Il formato della sintassi della stringa "%b %d, %y" è lo stesso di strftime.
Poiché il parametro html utilizza la formattazione Liquid, il valore originale dell'intervallo di tempo non viene modificato, ma solo il modo in cui il valore viene visualizzato all'utente. In questo modo, l'ordine in cui le date vengono visualizzate in una query non cambia.
Di seguito sono riportati altri esempi che puoi utilizzare. Il riferimento più ampio dei formati disponibili si trova in fondo a questa pagina.
| Preset | Esempio |
%m/%d/%Y
|
05/06/2013 |
%A, %B %e, %Y
|
Mercoledì 5 giugno 2013 |
%b %e %a
|
5 giu mer |
Esempio
Il seguente esempio di query di esplorazione mostra Data articoli ordine e Settimana articoli ordine formattati in modo diverso e organizzati in un'etichetta di gruppo Data creazione per simulare un gruppo di dimensioni data nel selettore campi di esplorazione.
La formattazione personalizzata mostra agli utenti la data e il numero della settimana dell'anno corrispondenti ai valori più elevati di Conteggio articoli in ordine decrescente.
Per scoprire di più sull'utilizzo del parametro group_label, consulta la pagina della documentazione di group_label.
LookML
L'esempio di esplorazione utilizza il seguente codice LookML:
# The original dimension group - hidden so that users can only choose from the formatted dates date and week timeframes
dimension_group: created {
hidden: yes
type: time
timeframes: [
raw,
time,
date,
hour,
hour_of_day,
time_of_day,
week,
month,
quarter,
year
]
sql: ${TABLE}.created_at ;;
}
# The customized timeframes, organized in the Explore field picker under the group label Created date
dimension: date_formatted {
group_label: "Created date"
label: "Date"
type: date_raw
sql: ${created_date} ;;
html: {{ rendered_value | date: "%b %d, %y" }};;
}
dimension: week_formatted {
group_label: "Created date"
label: "Week"
type: date_raw
sql: ${created_week} ;;
html: {{ rendered_value | date: "Week %U (%b %d)" }};;
}
strftime Reference
La tabella seguente elenca vari formati di strftime. Tieni presente che non tutti i formati potrebbero essere visualizzati come previsto in Looker.
| specifier | Sostituito da | Esempio |
| %a | Nome abbreviato del giorno della settimana * | Gio |
| %A | Nome completo del giorno della settimana * | Giovedì |
| %b | Nome del mese abbreviato * | ago |
| %B | Nome completo del mese * | Agosto |
| %c | Rappresentazione di data e ora * | Gio 23 ago 14:55:02 2001 |
| %C | Anno diviso per 100 e troncato al numero intero (00-99) | 20 |
| %d | Giorno del mese, con zero iniziale (01-31) | 23 |
| %D | Data breve GG/MM/AA, equivalente a %m/%d/%y | 23/08/01 |
| %e | Giorno del mese, con spaziatura ( 1-31) | 23 |
| %F | Data breve AAAA-MM-GG, equivalente a %Y-%m-%d | 2001-08-23 |
| %g | Anno basato sulla settimana, ultime due cifre (00-99) | 1 |
| %G | Anno basato sulla settimana | 2001 |
| %h | Nome del mese abbreviato * (come %b) | ago |
| %H | Ora nel formato 24 ore (00-23) | 14 |
| %I | Ora nel formato 12 ore (01-12) | 02 |
| %j | Giorno dell'anno (001-366) | 235 |
| %k | Ora nel formato 24 ore, le cifre singole sono precedute da uno spazio vuoto (0-23) | 14 |
| %l | Ora nel formato 12 ore, le cifre singole sono precedute da uno spazio vuoto (0-12) | 2 |
| %m | Mese come numero decimale (01-12) | 8 |
| %M | Minuto (00-59) | 55 |
| %n | Carattere di nuova riga ("\n") | |
| %P | Indicazione AM o PM in minuscolo | pm |
| %r | Ora dell'orologio di 12 ore * | 14:55:02 |
| %R | Ora HH:MM nel formato 24 ore, equivalente a %H:%M | 14:55 |
| %s | Numero di secondi trascorsi dall'epoca, 1970-01-01 00:00:00 +0000 (UTC) | 1566236649 |
| %S | Secondo (00-61) | 2 |
| %t | Carattere di tabulazione orizzontale ('\t') | |
| %T | Formato dell'ora ISO 8601 (HH:MM:SS), equivalente a %H:%M:%S | 14:55:02 |
| %u | Giorno della settimana ISO 8601 come numero con lunedì come 1 (1-7) | 4 |
| %U | Numero della settimana con la prima domenica come primo giorno della settimana 1 (00-53) | 33 |
| %V | Numero di settimana ISO 8601 (01-53) | 34 |
| %w | Giorno della settimana come numero decimale con domenica come 0 (0-6) | 4 |
| %W | Numero della settimana con il primo lunedì come primo giorno della settimana 1 (00-53) | 34 |
| %x | Rappresentazione della data * | 23/08/01 |
| %X | Rappresentazione del tempo * | 14:55:02 |
| %y | Anno, ultime due cifre (00-99) | 1 |
| %Y | Anno | 2001 |
| %z | Offset ISO 8601 rispetto a UTC nel fuso orario (1 minuto=1, 1 ora=100). Se non è possibile determinare il fuso orario, nessun carattere | 100 |
| %Z | Nome o abbreviazione del fuso orario *Se non è possibile determinare il fuso orario, nessun carattere | CDT |
| %% | Un simbolo % | % |