У меня есть таблица с двумя столбцами (startdate & enddate), и у меня есть две даты подачи (2012-02-29 и 2012-03-30). Я пытаюсь получить данные между startdate (2012-02-29) и enddate ( 2012-03-30)
я пробовал
i.startdate between '2012-02-29' and i.enddate '2012-03-30'
но это не сработало, я уже много часов искал это без четкого ответа, любая помощь была бы оценена, спасибо заранее.
Если я правильно понимаю:
StartDate
и EndDate
, которые описывают длительное событие. 2012-02-29
и 2012-03-30
. Если это правильно, используйте это:
SELECT * FROM Events WHERE StartDate >= '2012-02-29' AND EndDate <= '2012-03-30';
SELECT * FROM table_with_dates WHERE (i.startdate BETWEEN '2012-02-29' AND '2012-03-30') AND (i.enddate BETWEEN '2012-02-29' AND '2012-03-30')
where ('2012-02-29' between i.startdate and i.enddate) and ('2012-03-30' between i.startdate and i.enddate)
Я понимаю, что вы хотите, чтобы ваши представления (две даты) между startdate и enddate? так
Where (@firstDate between StartDate and EndDate) and (@secondDate between StartDate and EndDate)
Поскольку startdate и enddate являются отдельными полями, и вы ищете конкретные начальные и конечные даты, вам действительно не нужно между ними, просто
select ..... from ..... where i.startdate >= '2012-02-29' and i.enddate =< '2012-03-30'