Dateformat SQL : Tout savoir de cette requête

-
4
 m de lecture
-

En fonction des pays, des cultures ou des sources de données, les dates peuvent être écrites d’une multitude de manières. Or, pour simplifier le traitement des données, il est primordial de les uniformiser. Mais alors comment uniformiser ces dates ? Grâce au langage informatique SQL, il est possible d’utiliser la requête DATEFORMAT SQL.

Pourquoi uniformiser les dates ?

L’uniformisation des données pour mieux les exploiter

L’uniformisation des dates s’intègre parfaitement dans l’uniformisation des données de votre database. 

En effet, les organisations disposent d’un volume de données de plus en plus conséquent. Mais comme les sources et les formats sont extrêmement variés, il est parfois difficile de les exploiter. Alors pour apporter plus de valeur grâce aux données, il est primordial de les harmoniser. 

Afin de mener à bien ce travail de standardisation, les organisations ont tout intérêt à définir une stratégie de gouvernance des données.

L’uniformisation des dates

Si l’uniformisation des données est déterminante pour les entreprises, c’est d’autant plus important pour les dates. En effet, toutes les données sont intégrées à un jour et une heure précise. Or, la connaissance de cette date peut avoir une incidence sur la prise de décision. Il est donc primordial qu’elles soient harmonisées pour l’ensemble de l’organisation. 

Mais dans la pratique, force est de constater que c’est loin d’être toujours le cas. 

D’une part, parce que les données proviennent d’une multitude de sources (réseaux sociaux, site internet, rapport…). 

D’autre part, parce que chaque pays dispose de son propre formatage. Par exemple, le 18 avril 2023 sera écrit de manière différente selon les pays : 

  • en France : 18/04/2023
  • aux États-Unis : 04/18/2023
  • en Chine : 2023/18/04

Entre la diversité des sources de données et des cultures, le format des dates est très souvent hétérogène. C’est pour cette raison que la requête DATEFORMAT SQL est si utile. Son objectif est, en effet, de fournir à l’ensemble des utilisateurs de la base de données un format de date facile à lire et compréhensible par tous. Mais alors comment ça fonctionne ?

Comment fonctionne la requête DATEFORMAT-SQL ?

La requête DATE_FORMAT SQL permet de formater une date dans un format spécifique. C’est la fonction à privilégier si vous souhaitez uniformiser les dates de l’ensemble des données. 

Voici comment elle se présente : 

SELECT DATE_FORMAT(date,format)

Les formats

Pour le format, vous avez la possibilité de choisir une chaîne de caractère parmi la liste ci-dessous :

  • %a : nom du jour de la semaine abrégé (Sun, Mon, … Sat)
  • %b : nom du mois abrégé (Jan, Fev, … Dec)
  • %c : numéro du mois (0, 1, 2, … 12)
  • %D : numéro du jour, avec le suffixe en anglais (0th, 1st, 2nd, 3rd, …)
  • %d : numéro du jour du mois, sous 2 décimales (00..31) 
  • %e : numéro du jour du mois (0..31) 
  • %f : microsecondes (000000..999999)
  • %H : heure (00..23)
  • %h : heure (01..12)
  • %I : heure (01..12)
  • %i : minutes (00..59) 
  • %j : jour de l’année (001..366)
  • %k : heure (0..23)
  • %l : heure (1..12)
  • %M : nom du mois en anglais (January, February, …December)
  • %m : mois (00..12) 
  • %p : AM ou PM
  • %r : heure au format 12-heures (hh:mm:ss suivi par AM ou PM)
  • %S : secondes (00..59)
  • %s : secondes (00..59)
  • %T : heure au format 24 heures (hh:mm:ss)
  • %U : Semaine (00..53), pour lequel le dimanche est le premier jour de la semaine; WEEK() mode 0
  • %u : Semaine (00..53), pour lequel le lundi est le premier jour de la semaine
  • %V : Semaine (01..53), pour lequel le dimanche est le premier jour de la semaine (utilisé avec %X)
  • %v : Semaine (01..53), pour lequel le lundi est le premier jour de la semaine; (utilisé avec %x)
  • %W : nom du jour de la semaine en anglais (Sunday, Monday, … Saturday)
  • %w : numéro du jour de la semaine (0=dimanche, 1=lundi, … 6=samedi)
  • %X : numéro de la semaine de l’année avec 4 digits, pour lequel le dimanche est le premier jour de la semaine (utilisé avec %V)
  • %x : numéro de la semaine de l’année avec 4 digits, pour lequel le lundi est le premier jour de la semaine (utilisé avec %v)
  • %Y : année, numérique (avec 4 digits)
  • %y : année, numérique (avec 2 digits)

4 exemples de format de date avec la requête SQL

La grande diversité des formats proposés ci-dessus vous permet d’utiliser les combinaisons qui vous semblent les plus pertinentes pour votre organisation (notamment au regard des habitudes culturelles des collaborateurs). 

Pour vous aider à mieux comprendre, voici quelques exemples d’utilisation de la requête DATEFORMAT SQL : 

  • SELECT DATE_FORMAT(“2023-01-01”, « %D %b %Y ») -> 1st Jan 2023
  • SELECT DATE_FORMAT(“2023-01-01”, « %M %d %Y ») -> January 01 2023
  • SELECT DATE_FORMAT(“2023-01-01”, « %W %M %e %Y ») -> Sunday January 1 2023
  • SELECT DATE_FORMAT(“2023-01-01”, « %d/%m/%Y ») -> 01/01/2023

Afin de favoriser l’uniformisation des données au sein de l’organisation, nous vous conseillons d’indiquer le bon format au sein de votre stratégie de data gouvernance.

Quelles sont les autres fonctions de manipulations des dates ?

Au-delà de la requête DATEFORMAT SQL, il est possible d’utiliser d’autres fonctions de date. Les voici : 

  • NOW() : cela permet d’obtenir la date et l’heure actuelle sous le format  YYYYMMDDHHMMSS ou AAA-MM-JJ:HH:SS.
  • CURDATE() : cela permet d’obtenir la date actuelle sous le format YYYYMMDD ou AAA-MM-JJ.
  • CURTIME () :cela permet d’obtenir l’heure actuelle sous le format HHMMSS ou HH-MM-SS.
  • DATE_ADD : il s’agit d’ajouter un intervalle de temps à une date (comme une microseconde, une seconde, une heure, un jour, une semaine, une année, etc.).
  • DATE_SUB : à l’inverse, vous soustrayez un intervalle de temps à une date.
  • DATEDIFF : cette requête SQL vous permet de calculer le nombre de jours entre deux dates distinctes.
  • SET DATE FORMAT : cela permet d’obtenir la date sous le format jour/mois/année.

Ce qu’il faut retenir

  • Le requête DATEFORMAT SQL permet d’uniformiser les dates au sein d’une base de données. 
  • Pour cela, il est possible d’utiliser une multitude de formats. À définir au sein de votre stratégie de gouvernance de données. 
  • Cela participe pleinement au nettoyage des données et à leur harmonisation.
Facebook
Twitter
LinkedIn

DataScientest News

Inscrivez-vous à notre Newsletter pour recevoir nos guides, tutoriels, et les dernières actualités data directement dans votre boîte mail.
Poursuivre la lecture

Vous souhaitez être alerté des nouveaux contenus en data science et intelligence artificielle ?

Laissez-nous votre e-mail, pour que nous puissions vous envoyer vos nouveaux articles au moment de leur publication !

Newsletter icone
icon newsletter

DataNews

Vous souhaitez recevoir notre
newsletter Data hebdomadaire ?