0

当他在下表中已经存在的开始日期和结束日期之间输入开始和结束日期时,我想限制用户。

例如:用户尝试插入日期开始日期 2/6/2012 和结束日期 4/6/2012;此日期介于下表中的事件 e2 之间,因此不允许用户插入它。

 ------------------------------------------------------------------------
 id               event               startdate    enddate
 ------------------------------------------------------------------------
 11                e1                 31/5/2012    1/6/2012
 12                e2                 1/6/2012     4/6/2012
 13                e3                 5/6/2012     6/6/2012
 14                e4                 15/6/2012    16/6/2012

我想计算那些与其他事件冲突的事件。

4

1 回答 1

0
select tbl.startdate, count(tbl.startdate)
from YourTable tbl
where 
exists(select * from YourTable tbl2 where ((tbl2.startdate>=tbl.startdate AND tbl2.startdate<=tbl.enddate) OR (tbl2.enddate>=tbl.startdate AND tbl2.enddate<=tbl.enddate)))
group by tbl.startdate
于 2012-05-31T11:24:47.850 回答