gpt4 book ai didi

mysql - 查找一个时间段是否与另一个时间段重叠

转载 作者:行者123 更新时间:2023-11-29 21:50:07 25 4
gpt4 key购买 nike

在 MySQL 中,有没有一种方法可以查找两个时间段是否彼此重叠?例如我想看看是否 2015-10-10 9:00:00 - 2015-10-10 15:00:00重叠2015-10-15 12:00:00 - 2015-10-10 18:00:00 。正如你所看到的,它们确实重叠,我想知道是否有办法做到这一点?

最佳答案

如果您只想知道它们是否重叠,您可以检查一个范围是否在另一个范围开始之前完全完成。如果情况不是,则存在重叠。

因此,如果将每个时间戳字段命名为 start_1 到 end_1 和 start_2 到 end_2,则可以使用它来选择所有重叠记录。

SELECT * FROM xxx WHERE NOT(end_1 <= start_2 OR end_2 <= start_1)

您还应该能够使用相同的逻辑表达式来创建新的结果集字段。

SELECT NOT(end_1 <= start_2 OR end_2 <= start_1) as overlap, * FROM xxx

关于mysql - 查找一个时间段是否与另一个时间段重叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33725434/

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