【发布时间】:2012-03-30 21:00:09
【问题描述】:
我有两列(开始日期和结束日期)的表格,我有两个提交日期(2012-02-29 和 2012-03-30)我试图获取开始日期(2012-02-29)和结束日期(2012-03-30)
我试过了
i.startdate between '2012-02-29' and i.enddate '2012-03-30'
但这没有用,我已经在谷歌上搜索了几个小时没有明确的答案,任何帮助将不胜感激,在此先感谢。
【问题讨论】:
我有两列(开始日期和结束日期)的表格,我有两个提交日期(2012-02-29 和 2012-03-30)我试图获取开始日期(2012-02-29)和结束日期(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 是单独的字段,并且您正在寻找特定的 startdates 和 enddates,因此您并不需要介于两者之间,只需一个
select ..... from ..... where i.startdate >= '2012-02-29' and i.enddate =< '2012-03-30'
【讨论】: