Math avec les dates

SQL Server intermédiaire

Ginger Grant

Instructor

DATEPART

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

  • DD pour jour
  • MM pour mois
  • YY pour année
  • HH pour heure
SQL Server intermédiaire

Fonctions de date courantes en T-SQL

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

DATEADD

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

DATEADD (DATEPART, number, date) 
  • DATEPART : unité de mesure (DD, MM, etc.)
  • number : entier à ajouter
  • date : valeur datetime
SQL Server intermédiaire

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             | 
+-----------------------------+
SQL Server intermédiaire

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             | 
+-----------------------------+
SQL Server intermédiaire

DATEDIFF

Retourne une date après avoir ajouté ou soustrait un nombre à une date

DATEDIFF (datepart, startdate, enddate) 
  • datepart : unité de mesure (DD, MM, etc.)
  • startdate : date de début
  • enddate : date de fin (datetime)
SQL Server intermédiaire

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                 |
+--------------------+--------------------+
SQL Server intermédiaire

Passons à la pratique !

SQL Server intermédiaire

Preparing Video For Download...