Как найти дату в sql предыдущего 10-го года с первого дня по сегодняшний день - PullRequest
0 голосов
/ 04 июля 2019

Я пишу запрос, в котором мне нужно получить данные за последние 10 лет, т. Е. (01.01.2009) по сегодняшний день (07/04/2019).Но запрос, который я написал, возвращает дату 07/04/2009.

Это мой код, который я написал:

(SELECT DATEADD(YEAR,-10,GETDATE()))

Как я могу заставить его работать, чтобы он мог вернуть дату с 01.01.2009 на сегодняшнюю дату.

(SELECT DATEADD(YEAR,-10,GETDATE()))

Я ожидаю получить результат с 01/01/2009 по 07/04/2019

Ответы [ 2 ]

1 голос
/ 04 июля 2019

Вы также можете использовать функцию даты из частей.

select dateadd(year, -10, datefromparts(year(getdate()),1,1))

Выход:

2009-01-01
0 голосов
/ 04 июля 2019

Вы можете использовать:

SELECT GETDATE(),  -- current date
 DATEADD(yy, DATEDIFF(yy, 0, DATEADD(YEAR,-10,GETDATE())), 0) -- 1st day of year 10 years ago

db <> fiddle demo

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...