如何在MySQL中处理重叠的日期?

| 我正在尝试建立包含商品的预订系统(例如,Beamers),现在我想与AJAX一起检查给定的item_id在用户指定的开始和结束日期是否可用 编辑:有点不清楚,我想用MySQL和PHP,AJAX只是我请求结果的方式(可用是/否) 我将如何处理? 我的桌子看起来“像”是这样的:
reservation_id int PK
reservation_createDate datetime
reservation_startDate datetime
reservation_endDate datetime
item_id int FK(items.item_id)
假设我在数据库中已经“保留”了以下内容: (为了方便起见,所有item_id = 1)
reservation_id 1, item_id 1, from 2011-7-10 till 2011-7-14
reservation_id 2, item_id 1, from 2011-7-14 till 2011-7-16
reservation_id 3, item_id 1, from 2011-7-16 till 2011-7-20
并且用户想要在2011-7-12到2011-7-18期间保留item_id 1,正如您看到的那样,由于所有3个预订都在进行中,因此该条目将消失。 我将如何使用MySQL?     
已邀请:
        
SELECT COUNT(*)<1 AS Available FROM `TABLE` WHERE (`startDate`>CHECKING_START_TIME AND `startDate`<CHECKING_END_TIME) OR (`endDate`>CHECKING_START_TIME AND `endDate`<CHECKING_END_TIME) OR (`startDate`<CHECKING_START_TIME AND `endDate`>CHECKING_END_TIME)
如果结果大于0,则存在重叠     

要回复问题请先登录注册