假设要考虑的月份是 2013 年 10 月
,我想提取 2013 年 10 月
位于开始日期和结束日期之间的所有行。
我目前在我的 WHERE
子句中使用它:
WHERE (start_date >= '2013-10-01' AND end_date < '2013-11-01') OR // between 1st and 31st
(start_date >= '2013-10-01' AND start_date < '2013-11-01') OR // start falls in oct'13
(end_date >= '2013-10-01' AND end_date < '2013-11-01') // end falls in oct'13
这几乎完成了开始日期和结束日期在 13 年 10 月
之外的情况下的工作。例如,它将错过开始日期为 2013-05-01
和结束日期为 2014-02-22
我确信在 WHERE
中会使用一种简短而漂亮的方法,而不是我目前遵循的长方法。有什么建议吗?
最佳答案
WHERE start_date < '2013-11-01' And end_date >= '2013-10-01'
呢?
关于mysql - 选择月份位于开始日期和结束日期之间的行的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19874928/