Предложение SQL WHERE для извлечения записей на основе дат, которые находятся на 91-97 днях от текущей даты - PullRequest
0 голосов
/ 14 марта 2019

У меня нет большого опыта работы с SQL, но мне нужно выяснить, как использовать предложение WHERE для получения дат на 91-97 дней (в будущем) от текущей даты и изКонкретная дата.

То, что происходит каждый понедельник, выполняется этот запрос, но что-то случилось с нашей системой, чтобы предотвратить его выполнение.Так что я хочу, чтобы он запускался с начала этой недели (3/11), но я также хотел бы, чтобы код делал это и на текущую дату.

Ответы [ 2 ]

0 голосов
/ 14 марта 2019

Если вы используете SQL Server и я правильно понимаю:

SELECT DATEADD(Day,a,Convert(date, getdate()))
  FROM (VALUES (91),(92),(93),(94),(95),(96),(97)) AS X(a)

Возвращает вам список всех дат от 91 до 97 дней в будущем текущей даты.

0 голосов
/ 14 марта 2019

Стандартный SQL для этого:

where datecol >= current_date + interval '91 day' and
      datecol < current_date + interval '98 day'

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

В Oracle я бы выразил это как:

where datecol >= trunc(sysdate) + interval '91' day and
      datecol < trunc(sysdate) + interval '98' day
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...