我有一个名为“events”的MySQL表,其中包含活动数据。重要的列是“start”和“end”,它们包含字符串(YYYY-MM-DD),用于表示活动开始和结束的时间。
我想要获取在某一时段内所有活动的记录。
活动:
------------------------------ ID | START | END | ------------------------------ 1 | 2013-06-14 | 2013-06-14 | 2 | 2013-06-15 | 2013-08-21 | 3 | 2013-06-22 | 2013-06-25 | 4 | 2013-07-01 | 2013-07-10 | 5 | 2013-07-30 | 2013-07-31 | ------------------------------
请求/搜索:
示例:在2013-06-13和2013-07-22之间的所有事件:#1、#3、#4
SELECT id FROM events WHERE start BETWEEN '2013-06-13' AND '2013-07-22' : #1, #2, #3, #4 SELECT id FROM events WHERE end BETWEEN '2013-06-13' AND '2013-07-22' : #1, #3, #4 ====> 相交:#1、#3、#4
示例:在2013-06-14和2013-06-14之间的所有事件:
SELECT id FROM events WHERE start BETWEEN '2013-06-14' AND '2013-06-14' : #1 SELECT id FROM events WHERE end BETWEEN '2013-06-14' AND '2013-06-14' : #1 ====> 相交:#1
我尝试了很多查询,但仍然无法得到准确的SQL查询。
你不知道如何做吗?有什么建议吗?
谢谢!