У меня есть таблица Accounts, в которой есть столбец даты с именем TransactionDate. Мне нужно получить все записи, где TransactionDate находится между месяцем и годом.
Например, все записи, где TransactionDate находится между 6 2016 и 8 2017.
Моя строка запроса выглядит так:
SELECT Amount
FROM Accounts
WHERE (MONTH(TransactionDate) BETWEEN 6 and 8)
AND (YEAR(TransactionDate) BETWEEN 2016 and 2017)
ORDER BY TransactionDate ASC
Однако он дает мне записи только за июнь, июль 2016 г. и август 2017 г. Он пропускает записи за январь 2017 г., спет, ноябрь 2016 г.
Прикрепляю скриншот столбца TransactionDate всех записей (их 31)
Вот скриншот возвращенного результата
Что не так с моим запросом? Также этот запрос будет динамическим, т.е. пользователи будут выбирать месяц и год из формы, и им будет возвращен результат.
Спасибо.