Datummatematik

SQL Server för medelnivå

Ginger Grant

Instructor

DATEPART

DATEPART anger vilken del av datumet du vill beräkna. Vanliga förkortningar är:

  • DD för dag
  • MM för månad
  • YY för år
  • HH för timme
SQL Server för medelnivå

Vanliga datumfunktioner i T-SQL

  • DATEADD(): Lägg till eller subtrahera datumvärden
    • Returnerar alltid ett datum
  • DATEDIFF(): Beräkna skillnaden mellan två datumvärden
    • Returnerar alltid ett tal
SQL Server för medelnivå

DATEADD

Använd DATEADD() för att lägga till eller subtrahera ett värde och få ett nytt datum

DATEADD (DATEPART, number, date) 
  • DATEPART: Måttenhet (DD, MM osv.)
  • number: Ett heltalsvärde att lägga till
  • date: Ett datumvärde
SQL Server för medelnivå

Datummatematik med DATEADD (I)

Vilket datum infaller 30 dagar efter den 21 juni 2020?

SELECT DATEADD(DD, 30, '2020-06-21')
+-----------------------------+ 
|(No Column Name)             | 
|-----------------------------+ 
|2020-07-21 00:00             | 
+-----------------------------+
SQL Server för medelnivå

Datummatematik med DATEADD (II)

Vilket datum infaller 30 dagar före den 21 juni 2020?

SELECT DATEADD(DD, -30, '2020-06-21')
+-----------------------------+ 
|(No Column Name)             | 
|-----------------------------+ 
|2020-05-22 00:00             | 
+-----------------------------+
SQL Server för medelnivå

DATEDIFF

Returnerar ett datum efter att ett tal har lagts till eller subtraherats

DATEDIFF (datepart, startdate, enddate) 
  • datepart: Måttenhet (DD, MM osv.)
  • startdate: Startdatumvärdet
  • enddate: Slutdatumvärdet
SQL Server för medelnivå

Datummatematik med 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 för medelnivå

Nu kör vi en övning!

SQL Server för medelnivå

Preparing Video For Download...