DATE_FROM_UNIX_DATE |
Date de la date UNIX |
| BigQuery |
Syntaxe
|
DATE_FROM_UNIX_DATE(INT64_expression)
|
Paramètres
| Nom |
Description |
| INT64_expression |
Ce paramètre permet de spécifier un entier (INT64) représentant le nombre de jours écoulés depuis le 1er janvier 1970 (la "date UNIX"). La fonction convertira cet entier en une valeur de type DATE. |
Description
Cette fonction permet de calculer le nombre de jours s'étant écoulé entre l'expression spécifié et le 1er janvier 1970.
Remarques
- Fonction de conversion spécifique à l'époque UNIX : DATE_FROM_UNIX_DATE permet de transformer un entier représentant un nombre de jours depuis le 1er
janvier 1970 (appelée l'époque UNIX) en une valeur de type DATE. Cette conversion est utile pour interpréter des données brutes issues de systèmes bas niveau ou de
journaux de bords informatiques.
- Complémentaire à UNIX_DATE : Cette fonction agit comme l'inverse de UNIX_DATE(), convertissant une date vers un nombre de jours depuis 1970. En utilisant ces
deux fonctions ensemble, on peut passer d'une date à sa valeur numérique, puis revenir à la date initiale, ce qui est utile dans des transformations temporaires ou
des comparaisons.
- N'utilise que les jours, sans heure ni fuseau horaire : Comme la valeur d'entrée est un entier de jours, la conversion produite est strictement
calendaire. Cela signifie que l'heure n'est pas considérée, contrairement à des fonctions basées sur les secondes UNIX, comme TIMESTAMP_SECONDS().
- Particulièrement utile dans l'importation de données anciennes ou simplifiées : De nombreuses bases de données ou fichiers historiques utilisent le nombre
de jours UNIX comme format d'encodage simple des dates. DATE_FROM_UNIX_DATE permet de décoder rapidement ces valeurs en dates lisibles dans les rapports BigQuery.
- Permet de manipuler des dates même en dehors de l'époque courante : L'entrée INT64 autorise des valeurs positives et négatives, ce qui signifie que l'on
peut générer des dates futures (valeurs > 0) ou passées (valeurs < 0), c'est-à-dire avant 1970. Par exemple, DATE_FROM_UNIX_DATE(-365) renverra une date en 1969.
- Compatible avec les jointures ou les transformations en pipeline : Cette fonction peut être appliquée à des champs issus de requêtes, de sous-requêtes ou
de jointures, facilitant ainsi l'intégration de données UNIX avec d'autres formats temporels dans les pipelines d'analyse BigQuery.
- Évite les erreurs d'arrondi liées aux secondes : Contrairement aux conversions avec des horodatages exprimés en secondes (où les divisions peuvent
introduire des erreurs ou imprécisions), DATE_FROM_UNIX_DATE travaille directement en jours entiers, ce qui garantit une conversion simple et fiable.
- Facile à tester et prédire manuellement : Puisque la logique repose sur un simple décalage en jours depuis le 1er janvier 1970, il est facile de vérifier
la validité des résultats sans outil complexe. Par exemple, DATE_FROM_UNIX_DATE(0) renverra toujours '1970-01-01', et DATE_FROM_UNIX_DATE(1) renverra '1970-01-02'.
Dernière mise à jour : Jeudi, le 18 Juin 2020