Calcule cu date

SQL Server intermediar

Ginger Grant

Instructor

DATEPART

DATEPART specifică ce parte a datei doriți să calculați. Abrevierile frecvente sunt:

  • DD pentru Zi
  • MM pentru Lună
  • YY pentru An
  • HH pentru Oră
SQL Server intermediar

Funcții comune pentru date în T-SQL

  • DATEADD(): Adaugă sau scade valori datetime
    • Returnează întotdeauna o dată
  • DATEDIFF(): Obține diferența dintre două valori datetime
    • Returnează întotdeauna un număr
SQL Server intermediar

DATEADD

Pentru a adăuga sau scădea o valoare și a obține o dată nouă, utilizați DATEADD()

DATEADD (DATEPART, number, date) 
  • DATEPART: Unitatea de măsură (DD, MM etc.)
  • number: O valoare întreagă de adăugat
  • date: O valoare datetime
SQL Server intermediar

Calcule cu date folosind DATEADD (I)

Ce dată este la 30 de zile după 21 iunie 2020?

SELECT DATEADD(DD, 30, '2020-06-21')
+-----------------------------+ 
|(No Column Name)             | 
|-----------------------------+ 
|2020-07-21 00:00             | 
+-----------------------------+
SQL Server intermediar

Calcule cu date folosind DATEADD (II)

Ce dată este cu 30 de zile înainte de 21 iunie 2020?

SELECT DATEADD(DD, -30, '2020-06-21')
+-----------------------------+ 
|(No Column Name)             | 
|-----------------------------+ 
|2020-05-22 00:00             | 
+-----------------------------+
SQL Server intermediar

DATEDIFF

Returnează diferența dintre două date ca număr

DATEDIFF (datepart, startdate, enddate) 
  • datepart: Unitatea de măsură (DD, MM etc.)
  • startdate: Data de început
  • enddate: Data de sfârșit
SQL Server intermediar

Calcule cu date folosind 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 intermediar

Să exersăm!

SQL Server intermediar

Preparing Video For Download...