Calculs avec des dates

Intermédiaire SQL Serveur

Ginger Grant

Instructor

DATEPART

DATEPART sert à indiquer la partie de date à calculer. Abréviations courantes :

  • DD pour Day (jour)
  • MM pour Month (mois)
  • YY pour Year (année)
  • HH pour Hour (heure)
Intermédiaire SQL Serveur

Fonctions de date courantes en T‑SQL

  • DATEADD() : ajouter ou soustraire des valeurs datetime
    • renvoie toujours une date
  • DATEDIFF() : obtenir l'écart entre deux valeurs datetime
    • renvoie toujours un nombre
Intermédiaire SQL Serveur

DATEADD

Pour ajouter ou soustraire une valeur et obtenir une nouvelle date, utilisez DATEADD()

DATEADD (DATEPART, number, date) 
  • DATEPART : unité (DD, MM, etc.)
  • number : entier à ajouter
  • date : valeur datetime
Intermédiaire SQL Serveur

Calculs de dates avec DATEADD (I)

Quelle est la date 30 jours après le 21 juin 2020 ?

SELECT DATEADD(DD, 30, '2020-06-21')
+-----------------------------+ 
|(No Column Name)             | 
|-----------------------------+ 
|2020-07-21 00:00             | 
+-----------------------------+
Intermédiaire SQL Serveur

Calculs de dates avec DATEADD (II)

Quelle est la date 30 jours avant le 21 juin 2020 ?

SELECT DATEADD(DD, -30, '2020-06-21')
+-----------------------------+ 
|(No Column Name)             | 
|-----------------------------+ 
|2020-05-22 00:00             | 
+-----------------------------+
Intermédiaire SQL Serveur

DATEDIFF

Renvoie une date après ajout ou soustraction d'un nombre à une date

DATEDIFF (datepart, startdate, enddate) 
  • datepart : unité (DD, MM, etc.)
  • startdate : date de début
  • enddate : date de fin
Intermédiaire SQL Serveur

Calculs de dates avec DATEDIFF

SELECT DATEDIFF(DD, '2020-05-22', '2020-06-21') AS Difference1,
       DATEDIFF(DD, '2020-07-21', '2020-06-21') AS Difference2
+--------------------+--------------------+ 
|Difference1         |Difference2         |
+--------------------+--------------------+
|30                  |-30                 |
+--------------------+--------------------+
Intermédiaire SQL Serveur

Passons à la pratique !

Intermédiaire SQL Serveur

Preparing Video For Download...