MS Access запрос Где - PullRequest
       3

MS Access запрос Где

0 голосов
/ 16 мая 2018

Я пытаюсь найти необходимость фильтровать мой запрос, чтобы показать результат за этот месяц и за последний месяц.

WHERE t.AllDate Between Date() - 60 and Date()

Мой код пока такой, но он откатывается на 60 дней.

Мне нужен результат за весь последний месяц.

Спасибо.

Ответы [ 2 ]

0 голосов
/ 16 мая 2018

Так может быть проще:

WHERE DateDiff("m", t.AllDate, Date()) < 2
0 голосов
/ 16 мая 2018

Если вопрос

Как получить дату первого дня предыдущего месяца?

Вы можете сделать это вMS Access SQL:

DateSerial(Year(DateAdd('m',-1,Date())), Month(DateAdd('m',-1,Date())),1)

Сейчас он возвращает 1/04/2018

Ваш запрос становится:

WHERE t.AllDate Between DateSerial(Year(DateAdd('m',-1,Date())), Month(DateAdd('m',-1,Date())),1) 
                    and Date()

С помощью этого трюка вы всегда получите правильный год имесяц, даже если вы запустите его в январе.

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