Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 SQL-запрос для сегодняшней даты (- 2) месяца  [new]
TsYekaterina
Member

Откуда:
Сообщений: 206
Доброе утро! подскажите, пожалуйста, как правильно написать sql-запрос от сегодняшней даты -2 мес. (или от сегодняшего мес. (-2) мес.). Сделала так,
но в результате выходят записи и за 2017, и за 2016, и за 2015 года.
select Gorod, Name_klient,  summa, data_doc from TestFSO.dbo.doc_klient, TestFSO.dbo.klient where 
doc_klient.id_klient=klient.id_klient and kod_oper=1 and summa < 0 and data_doc < DATEADD(month, -2, GETDATE()) 
25 фев 19, 08:44    [21818453]     Ответить | Цитировать Сообщить модератору
 Re: SQL-запрос для сегодняшней даты (- 2) месяца  [new]
Дмитрий Мух
Member

Откуда: Зеленоград
Сообщений: 3786
TsYekaterina,

если дата должна лежать в периоде с 25-го декабря 2018 по 25 февраля 2019, то так и писать:
AND data_doc BETWEEN DATEADD(month, -2, GETDATE()) AND GETDATE()

или
AND data_doc BETWEEN DATEADD(day, -60, GETDATE()) AND GETDATE()
25 фев 19, 09:00    [21818461]     Ответить | Цитировать Сообщить модератору
 Re: SQL-запрос для сегодняшней даты (- 2) месяца  [new]
Дмитрий Мух
Member

Откуда: Зеленоград
Сообщений: 3786
TsYekaterina,

а это условие
data_doc < DATEADD(month, -2, GETDATE())

означает, что следует выбрать данные ДО даты, что была два месяца назад, то есть "и за 2017, и за 2016, и за 2015 года"
25 фев 19, 09:03    [21818462]     Ответить | Цитировать Сообщить модератору
 Re: SQL-запрос для сегодняшней даты (- 2) месяца  [new]
TsYekaterina
Member

Откуда:
Сообщений: 206
Дмитрий Мух,
большое спасибо за помощь и разъяснение!
25 фев 19, 09:11    [21818466]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить