我有一个事件数据库。每个活动都有开始日期和结束日期。我有一个插件可以将数据提取到jquery日历中,询问(json)开始日期和结束日期。
假设我在start date = 01-02-2015
和end date = 11-02-2015
举办了一次“特别活动”。
当我致电getevent.php?start=01-02-2015&end=28-02-2015
时,我会收到2月份的所有活动(“获取所有活动的开始日期> = 01-02-2015&& end date< = 28-02 -2015)。当我想获取不同间隔的数据时会出现问题。
假设我想在2月2日至8日举办活动:当我致电getevent.php?start=02-02-2015&end=08-02-2015
时,我什么都没得到(因为我的“特别活动”不适合开始日期> = 02-02- 2015年&&结束日期< = 08-02-2015查询)。
你知道热解决这个问题吗?
答案 0 :(得分:0)
如果我理解正确,你想要获得所有至少一天共同并且查询范围的事件,对吗?
假设"变量" eventStartDate
,eventEndDate
,rangeStartDate
,rangeEndDate
您需要找到符合条件的行:
(eventStartDate >= rangeStartDate AND eventStartDate <= rangeEndDate)
OR
(eventEndDate >= rangeStartDate AND eventEndDate <= rangeEndDate)
假设rangeStartDate
总是小于或等于rangeEndDate
(事件的日期相同),可以简化为:
eventEndDate >= rangeStartDate AND eventStartDate <= rangeEndDate