Обычно, если я хочу сделать запрос к таблице по диапазону дат, я сделаю это следующим образом:
SELECT DISTINCT c.ID AS 'id' FROM CUST c
JOIN TICKET t ON s.ID = t.SALE_ID
WHERE c.ACTIVE_IND = 1
AND t.DELIV_DATE BETWEEN '01-01-2012' AND '01-02-2012'
ORDER BY t.DELIV_DATE DESC
Теперь мне нужно сделать тот же запрос, но игнорировать год, чтобы я могскажем, с 28 февраля по 2 марта и год не имеет значения.
Я попытался изменить запрос:
SELECT DISTINCT c.ID AS 'id' FROM CUST c
JOIN TICKET t ON s.ID = t.SALE_ID
WHERE c.ACTIVE_IND = 1
AND MONTH(t.DELIV_DATE) BETWEEN ... AND ...
AND DAY(t.DELIV_DATE) ... BETWEEN ...
ORDER BY t.DELIV_DATE DESC
Вышеупомянутый запрос работает нормально, если начальный день меньше конечного.это означает, что если я перейду с 20 февраля по 28 февраля, все будет работать нормально, но если я перейду с 28 февраля на 2 марта, это не сработает.один запрос?