In einigen Fällen kann es sinnvoll sein, die Datumsformatierung in Looker zu ändern.
Wenn Sie beispielsweise explorative Datenanalysen und Dashboards für Nutzer in Europa erstellen, sollten alle Datumsangaben im reinen Zahlenformat in der Reihenfolge Tag-Monat-Jahr angezeigt werden. Der 7. Juni 2019 sollte beispielsweise als 07/06/2019
oder Jun 07, 2019
formatiert werden. Im Standardformat von Looker wird das Datum als 2019-06-07
dargestellt. Sie können zwar SQL-Funktionen wie DATE_FORMAT()
verwenden, um ein Datumsformat zu ändern, aber Sie möchten möglicherweise nicht alles in reinen SQL-Code schreiben.
Liquid im Parameter html
verwenden
Sie können die Liquid-Formatierung im Parameter html
einer Dimension verwenden, um das Format eines Felds mit einem gültigen Datumsformat zu ändern. Da Liquid ein gültiges Datum erwartet, sollten Sie die Zeiträume aus einer vorhandenen Dimensionsgruppe verwenden. Die Nummern für Woche oder Monat können nicht geändert werden, da sie als Ganzzahlen zurückgegeben werden.
Sie können beispielsweise ${created_date}
so formatieren, dass es als Aug 23 22
statt als 2022-08-23
gerendert wird:
dimension: date_formatted { sql: ${created_date} ;; html:{{ rendered_value | date: "%b %d, %y" }};; }
Das Format der Stringsyntax "%b %d, %y"
entspricht dem von strftime
.
Da für den Parameter html
die Liquid-Formatierung verwendet wird, ändert sich der ursprüngliche Wert des Zeitraums nicht, sondern nur die Art und Weise, wie der Wert für den Nutzer gerendert wird. So wird sichergestellt, dass sich die Reihenfolge der Datumsangaben in einer Abfrage nicht ändert.
Im Folgenden finden Sie weitere Beispiele, die Sie verwenden können. Eine umfassende Liste der verfügbaren Formate finden Sie unten auf dieser Seite.
Voreinstellung | Beispiel |
%m/%d/%Y
|
06/05/2013 |
%A, %B %e, %Y
|
Mittwoch, 5. Juni 2013 |
%b %e %a
|
5. Juni, Mi |
Beispiel
Im folgenden Beispiel für eine Explore-Abfrage sind Datum der Artikelbestellung und Wochen mit Artikelbestellungen unterschiedlich formatiert und unter dem Gruppenlabel Erstellungsdatum organisiert, um eine Datumsdimensionengruppe in der Auswahl der Explore-Felder zu simulieren.
Die benutzerdefinierte Formatierung zeigt Nutzern an, welches Datum und welche Wochennummer des Jahres den größten Werten für die Artikelanzahl in absteigender Reihenfolge entsprechen.
Weitere Informationen zur Verwendung des Parameters group_label
finden Sie auf der group_label
-Dokumentationsseite.
LookML
Im Beispiel für das Explore wird die folgende LookML verwendet:
# 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
In der folgenden Tabelle sind verschiedene strftime
-Formate aufgeführt. Beachten Sie, dass nicht alle Formate in Looker wie erwartet gerendert werden.
specifier | Ersetzt durch | Beispiel |
%a | Abgekürzter Wochentagname * | Do. |
%A | Vollständiger Wochentagname * | Donnerstag |
%b | Abgekürzter Monatsname * | Aug. |
%B | Vollständiger Monatsname * | August |
%c | Datums- und Uhrzeitdarstellung * | Thu Aug 23 14:55:02 2001 |
%C | Jahr geteilt durch 100 und auf eine Ganzzahl (00–99) gekürzt | 20 |
%d | Tag des Monats, mit führenden Nullen (01–31) | 23 |
%D | Kurzes Datum im Format MM/TT/JJ, entspricht %m/%d/%y | 23.08.01 |
%e | Tag des Monats, mit Leerzeichen ( 1–31) | 23 |
%F | Kurzes Datum im Format JJJJ-MM-TT, entspricht %Y-%m-%d | 2001-08-23 |
%g | Wochenbasiertes Jahr, letzte zwei Ziffern (00–99) | 1 |
%G | Wochenbasiertes Jahr | 2001 |
%h | Abgekürzter Monatsname * (entspricht %b) | Aug. |
%H | Stunde im 24-Stunden-Format (00–23) | 14 |
%I | Stunde im 12-Stunden-Format (01–12) | 02 |
%j | Tag des Jahres (001–366) | 235 |
%k | Stunde im 24-Stunden-Format, vor einzelnen Ziffern steht ein Leerzeichen (0–23) | 14 |
%l | Stunde im 12-Stunden-Format, vor einzelnen Ziffern steht ein Leerzeichen (0–12) | 2 |
%m | Der Monat als Dezimalzahl (01–12) | 8 |
%M | Minute (00–59) | 55 |
%n | Zeilenumbruchzeichen ("\n") | |
%P | „am“ oder „pm“ in Kleinbuchstaben | nachmittags |
%r | 12-Stunden-Format * | 14:55:02 Uhr |
%R | 24-Stunden-Format HH:MM, entspricht %H:%M | 14:55 |
%s | Anzahl der Sekunden seit der Epoche, 01.01.1970 00:00:00 +0000 (UTC) | 1566236649 |
%S | Sekunde (00–61) | 2 |
%t | Horizontales Tabulatorzeichen ("\t") | |
%T | Zeitformat ISO 8601 (HH:MM:SS), entspricht %H:%M:%S | 14:55:02 |
%u | ISO 8601-Wochentag als Zahl, wobei Montag 1 ist (1–7) | 4 |
%U | Wochennummer mit dem ersten Sonntag als ersten Tag der Woche (00–53) | 33 |
%V | ISO 8601-Wochennummer (01–53) | 34 |
%w | Wochentag als Dezimalzahl, wobei Sonntag als 0 gilt (0–6) | 4 |
%W | Wochennummer, wobei der erste Montag als erster Tag der Woche 1 gilt (00–53) | 34 |
%x | Datumsdarstellung * | 23.08.01 |
%X | Zeitdarstellung * | 14:55:02 |
%y | Jahr, die letzten zwei Ziffern (00–99) | 1 |
%Y | Jahr | 2001 |
%z | ISO 8601-Offset von UTC in der Zeitzone (1 Minute=1, 1 Stunde=100). Wenn die Zeitzone nicht ermittelt werden kann, werden keine Zeichen angezeigt. | 100 |
%Z | Name oder Abkürzung der Zeitzone *Wenn die Zeitzone nicht ermittelt werden kann, keine Zeichen | CDT |
%% | Ein Prozentzeichen % | % |