Средний уровень SQL Server
Ginger Grant
Instructor
DATEPART определяет, какую часть даты нужно вычислить. Часто используемые сокращения:
DD — деньMM — месяцYY — годHH — часDATEADD(): прибавляет или вычитает значение даты/времениDATEDIFF(): вычисляет разницу между двумя значениями даты/времениЧтобы прибавить или вычесть значение и получить новую дату, используйте DATEADD()
DATEADD (DATEPART, number, date)
DATEPART: единица измерения (DD, MM и т. д.)number: целое число для прибавленияdate: значение даты/времениКакая дата наступит через 30 дней после 21 июня 2020 года?
SELECT DATEADD(DD, 30, '2020-06-21')
+-----------------------------+
|(No Column Name) |
|-----------------------------+
|2020-07-21 00:00 |
+-----------------------------+
Какая дата была за 30 дней до 21 июня 2020 года?
SELECT DATEADD(DD, -30, '2020-06-21')
+-----------------------------+
|(No Column Name) |
|-----------------------------+
|2020-05-22 00:00 |
+-----------------------------+
Возвращает дату после прибавления или вычитания числа
DATEDIFF (datepart, startdate, enddate)
datepart: единица измерения (DD, MM и т. д.)startdate: начальное значение датыenddate: конечное значение даты/времени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