gpt4 book ai didi

sql - 查找开始日期早于前一个结束日期的所有行

转载 作者:行者123 更新时间:2023-12-02 07:58:47 25 4
gpt4 key购买 nike

有没有办法根据用户拉回所有具有重叠日期时间的记录?

例如;

表 A 具有以下行;

TrainerID            StartTime            EndTime
1234 10-1-2015 08:30 10-1-2015 09:00
1234 10-1-2015 08:45 10-1-2015 09:15
1234 10-1-2015 09:30 10-1-2015 10:00
2345 10-1-2015 08:45 10-1-2015 09:15
2345 10-1-2015 09:30 10-1-2015 10:00

我需要一个只能提取以下记录的查询,因为它的开始时间早于培训师的上一个结束时间(双重预订):

1234                 10-1-2015 08:45      10-1-2015 09:15

最佳答案

下面的 EXIST 代码应该可以给您答案。该代码确保冲突条目的开始时间在主列表条目的开始时间之前,而冲突的开始时间仍然在邮件列表条目的开始时间之后。

SELECT * 
FROM tblTest clashing
WHERE EXISTS
(
SELECT 1
FROM tblTest mainlist
WHERE clashing.trainderid = mainlist.trainderid
AND clashing.starttime < mainlist.endtime
AND clashing.starttime > mainlist.starttime
)

这也可以用 IN 语句编写,但 EXIST 效率更高

关于sql - 查找开始日期早于前一个结束日期的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32747383/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com