Dans certains cas, vous pouvez modifier la façon dont Looker formate les dates.
Par exemple, si vous créez des explorations et des tableaux de bord pour des utilisateurs en Europe, toutes les dates au format numérique doivent apparaître dans l'ordre Jour-Mois-Année. Par exemple, le 7 juin 2019 doit être au format 07/06/2019
ou Jun 07, 2019
. Le format par défaut de Looker affiche la date au format 2019-06-07
. Bien que vous puissiez utiliser des fonctions SQL telles que DATE_FORMAT()
pour modifier un format de date, vous ne souhaitez peut-être pas tout écrire en SQL pur.
Utiliser Liquid dans le paramètre html
Vous pouvez utiliser le formatage liquide dans le paramètre html
d'une dimension pour modifier le format de n'importe quel champ qui utilise un format de date valide. Comme Liquid attend une date valide, il est préférable d'utiliser les périodes d'un groupe de dimensions existant. Vous ne pouvez pas modifier les chiffres de la semaine ou du mois, car ils sont renvoyés sous forme d'entiers.
Par exemple, vous pouvez formater ${created_date}
pour qu'il s'affiche sous la forme Aug 23 22
au lieu de 2022-08-23
, qui est la valeur par défaut de Looker:
dimension: date_formatted { sql: ${created_date} ;; html:{{ rendered_value | date: "%b %d, %y" }};; }
Le format de la syntaxe de chaîne "%b %d, %y"
est le même que celui de strftime
.
Étant donné que le paramètre html
utilise la mise en forme Liquid, la valeur d'origine de la période n'est pas modifiée, mais uniquement la façon dont elle est affichée pour l'utilisateur. Cela garantit que l'ordre dans lequel les dates apparaissent dans une requête ne change pas.
Voici d'autres exemples que vous pouvez utiliser. Vous trouverez une liste plus complète des formats disponibles en bas de cette page.
Préréglage | Exemple |
%m/%d/%Y
|
06/05/2013 |
%A, %B %e, %Y
|
Mercredi 5 juin 2013 |
%b %e %a
|
Mer 5 juin |
Exemple
L'exemple de requête d'exploration suivant présente les champs Date des articles de commande et Semaine des articles de commande avec un format différent et organisés sous un libellé de groupe Date de création pour simuler un groupe de dimensions de date dans le sélecteur de champ d'exploration.
Le formatage personnalisé indique aux utilisateurs la date et le numéro de semaine de l'année correspondant aux valeurs les plus élevées de Nombre d'articles, par ordre décroissant.
Consultez la page de documentation sur group_label
pour en savoir plus sur l'utilisation du paramètre group_label
.
Le code LookML
L'exemple d'exploration utilise le code LookML suivant:
# 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
Le tableau suivant répertorie les différents formats strftime
. Veuillez noter que tous les formats ne s'affichent pas comme prévu dans Looker.
spécifieur | remplacé par | Exemple |
%a | Nom du jour de la semaine abrégé * | Jeu |
%A | Nom complet du jour de la semaine * | Jeudi |
%b | Nom abrégé du mois * | Août |
%B | Nom du mois complet * | Août |
%c | Représentation de la date et de l'heure * | Jeu 23 août 14:55:02 2001 |
%C | Année divisée par 100 et tronquée pour obtenir un entier (00-99) | 20 |
%d | Jour du mois, avec zéros à gauche (01-31) | 23 |
%D | Date courte MM/JJ/AA, équivalente à %m/%d/%y | 08/23/01 |
%e | Jour du mois, avec des espaces avant et après ( 1-31) | 23 |
%F | Date courte au format AAAA-MM-JJ, équivalente à %Y-%m-%d | 2001-08-23 |
%g | Année basée sur les semaines, deux derniers chiffres (00-99) | 1 |
%G | Année basée sur les semaines | 2001 |
%h | Nom abrégé du mois * (identique à %b) | Août |
%H | Heure au format 24 heures (00-23) | 14 |
%I | Heure au format 12 heures (01-12) | 02 |
%j | Jour de l'année (001-366) | 235 |
%k | Heure au format 24 heures, les valeurs à un seul chiffre sont précédées d'un espace (0-23) | 14 |
%l | Heure au format 12 heures, les valeurs à un seul chiffre sont précédées d'un espace vide (0-12) | 2 |
%m | Mois sous forme de nombre décimal (01-12) | 8 |
%M | Minute (00-59) | 55 |
%n | Caractère de nouvelle ligne ("\n") | |
%P | "am" ou "pm" en minuscules | pm |
%r | Heure 12 heures * | 14:55:02 |
%R | Heure HH:MM au format 24 heures, équivalente à %H:%M | 14:55 |
%s | Nombre de secondes écoulées depuis l'epoch, 1970-01-01 00:00:00 +0000 (UTC) | 1566236649 |
%S | Seconde (00-61) | 2 |
%t | Caractère de tabulation horizontale ("\t") | |
%T | Format d'heure ISO 8601 (HH:MM:SS), équivalent à %H:%M:%S | 14:55:02 |
%u | Jour de la semaine ISO 8601 sous forme de nombre, le lundi étant défini sur 1 (1-7) | 4 |
%U | Numéro de la semaine avec le premier dimanche comme premier jour de la semaine 1 (00-53) | 33 |
%V | Numéro de semaine ISO 8601 (01-53) | 34 |
%w | Jour de la semaine sous forme de nombre décimal, dimanche étant défini sur 0 (0-6) | 4 |
%W | Numéro de la semaine avec le premier lundi comme premier jour de la semaine 1 (00-53) | 34 |
%x | Représentation de la date * | 08/23/01 |
%X | Représentation de l'heure * | 14:55:02 |
%y | Année, deux derniers chiffres (00-99) | 1 |
%Y | Année | 2001 |
%z | Décalage ISO 8601 par rapport à l'UTC dans le fuseau horaire (1 minute=1, 1 heure=100) Si le fuseau horaire ne peut pas être déterminé, aucun caractère | 100 |
%Z | Nom ou abréviation du fuseau horaire *Si le fuseau horaire ne peut pas être déterminé, aucun caractère | CDT |
%% | Un signe % | % |