我有PHP和MySQL的一个简单的日历阻塞事件,它存储在一个简单的格式事件:Mysql数据库设计,在日历上
id int
name varchar
start datetime
end datetime
我需要做的,并不能找到一个可靠这样做的方法是“阻止”某个时间段,以便在该时间段内不能有任何其他事件。
我试图找到基本上是MySQL查询,以检查新选择的时间段被占用:
如果我走了这条路:
SELECT * FROM events WHERE new_event_start => start AND new_event_end =< end;
它未能找到事件在new_event_start
之前开始并在new_event_end
之后开始任何想法?
你能告诉我们更多关于你的设计吗?表格行的存在是否意味着时间被占用?或者,你是否有一排,其个别领域或领域表明时间被占领? – octopusgrabbus
是的,行的存在意味着该行的日期时间“开始”和“结束”之间的时间范围被占用,并且必须是唯一的......所以我试图找到查询表的最佳方式在插入新行之前占用时间... –