FORMAT_DATETIME |
Date et heure de format |
| BigQuery |
Syntaxe
|
FORMAT_DATETIME(format_string, datetime_expression)
|
Paramètres
| Nom |
Description |
| format_string |
Ce paramètre permet de définir le modèle de formatage souhaité pour la date et l'heure de sortie. Il utilise des éléments de format spécifiques (par exemple, %Y pour l'année, %m pour le mois, %d pour le jour, %H pour l'heure, %M pour les minutes, %S pour les secondes). |
| datetime_expression |
Ce paramètre permet de spécifier l'expression de date et heure (une colonne de type DATETIME ou une expression qui en résulte) que vous souhaitez formater. |
Description
Cette fonction permet de demander une date et heure selon le formatage et l'expression de date et heure spécifié.
Remarques
- FORMAT_DATETIME est utile pour produire des chaînes lisibles combinant date et heure : Cette fonction permet de formater une valeur de type DATETIME en une
chaîne de caractères structurée, selon un modèle défini par l'utilisateur. Elle est donc parfaite pour présenter des horodatages dans des rapports, interfaces ou exports
lisibles.
- Elle s'appuie sur les spécificateurs classiques de type strftime : Par exemple : %Y pour l'année, %m pour le mois, %d pour le jour, %H pour
l'heure (24h), %M pour les minutes, %S pour les secondes. Cela permet une grande précision dans le rendu, mais nécessite de bien connaître la syntaxe de formatage.
- Elle est particulièrement utile dans les interfaces utilisateurs multilingues ou régionales : On peut adapter les formats d'affichage pour convenir à des
conventions locales : par exemple, "%d/%m/%Y %H:%M" pour un format européen ou "%Y-%m-%d %I:%M %p" pour un format anglo-saxon en 12 heures avec AM/PM.
- La sortie de FORMAT_DATETIME est toujours de type STRING : Cela signifie que le résultat n'est pas utilisable directement dans des comparaisons temporelles
ou des calculs de date/heure. Elle est uniquement destinée à l'affichage ou à l'exportation, pas à des traitements chronologiques ultérieurs.
- datetime_expression peut être dynamique ou statique : Ce paramètre accepte aussi bien une constante de type DATETIME, une colonne d'une table, ou
une expression calculée (comme CURRENT_DATETIME() ou une valeur dérivée de DATETIME_ADD). Cela rend la fonction très flexible en pratique.
- Elle est différente de FORMAT_DATE et FORMAT_TIMESTAMP : FORMAT_DATETIME est spécifique au type DATETIME (qui contient une date et une heure, mais pas
de fuseau horaire). Pour des données avec fuseau (TIMESTAMP), il vaut mieux utiliser FORMAT_TIMESTAMP. Cette distinction est importante pour éviter des erreurs
de conversion implicite.
- Le formatage est indépendant du fuseau horaire : Étant donné que DATETIME n'inclut pas de notion de fuseau horaire, le résultat du formatage reste constant
quel que soit le contexte régional ou les paramètres de session, ce qui est utile pour des données neutres temporellement.
- Utile pour concaténer ou intégrer des dates formatées dans des messages : Par exemple, on peut utiliser FORMAT_DATETIME("%A %d %B %Y à %Hh%M", datetime_column)
pour obtenir une chaîne du type "Lundi 16 juin 2025 à 13h45". Cela permet d'intégrer les dates dans des messages dynamiques ou des rapports personnalisés.
Dernière mise à jour : Jeudi, le 18 Juin 2020