Mysql查询判断给定的日期时间是否包含在日期时间间隔内

2024-01-29

我陷入了这个任务,如果给定的日期时间落在开始日期和结束日期之间。 例如,这是一个日历数据表:

| id |  start               | end

| 31 | 2017-03-15 05:21:30  | 2017-03-15 06:21:30 
| 32 | 2017-03-14 06:25:30  | 2017-03-14 06:25:30 
| 33 | 2017-03-14 06:25:45  | 2017-03-14 06:25:45 

我必须使用以下开始和结束日期时间将新数据插入表中:

start: 2017-03-15 05:30:30 end: 2017-03-15 06:30:30

但在此之前,我必须检查开始日期和结束日期是否存在于表中的任何日期时间间隔中。

结果应该是给定的开始和结束日期不会被插入,因为它落在或包含在表 id 31 日期时间间隔之间。

我应该如何使用查询来做到这一点?我尝试过这种查询:Select * from calendar_date as c where c.start >= start AND c.end <= end确定给定的开始和结束日期时间存在,但没有找到结果,我认为我搞砸了查询。我真的希望有人能帮我检查一下。


干得好:

Select * from calendar_date as ,c where LEAST(c.end, end) - GREATEST(c.start, start) > 0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mysql查询判断给定的日期时间是否包含在日期时间间隔内 的相关文章

随机推荐