gpt4 book ai didi

mysql - x 和 y 值之间有 2 列 mysql

转载 作者:行者123 更新时间:2023-11-30 00:00:12 24 4
gpt4 key购买 nike

我有以下查询:

SELECT DISTINCT T1.SCHEDULE_START, T1.SCHEDULE_END, T2.SCHEDULE_TYPE_ID, T2.SCHEDULENAME
FROM schedule_intermediate T1 JOIN schedule_type T2 ON T1.SCHEDULE_TYPE_ID = T2.SCHEDULE_TYPE_ID
WHERE (
SELECT COUNT(*) FROM reservation R JOIN schedule_intermediate SI ON R.SCHEDULEID_GENERATED = SI.SCHEDULEID_GENERATED
WHERE RESOURCEID = 456
AND SI.SCHEDULEID_GENERATED = 4
AND R.RESERVATIONDUEDATE = '2014-08-06 07:50:00'
AND R.RESERVATIONEXPIREDATE = '2014-08-06 08:35:00'
HAVING T1.SCHEDULE_START != DATE_FORMAT('2014-08-06 07:50:00', '%H:%i:%s')
AND T1.SCHEDULE_END != DATE_FORMAT('2014-08-06 08:35:00', '%H:%i:%s')
) = 0
ORDER BY T1.SCHEDULE_START

用于选择不会与其他计划发生冲突的计划。

这会产生:

enter image description here

但是,它从时间表以及 08:35:00 到 09:20 的时段中排除了 7:50:0008:35:00 :00 被排除。

我想排除提供的范围之间的时间段,但是,我需要包括提供的具体时间(07:50:00 和 08 :35:00),只是排除该范围内的分钟(从 7:51:00 - 8:34:00)。

有办法实现这一点吗?

我已经尝试过:

HAVING T1.SCHEDULE_START <= DATE_FORMAT('2014-08-06 07:50:00', '%H:%i:%s')
AND T1.SCHEDULE_END >= DATE_FORMAT('2014-08-06 08:35:00', '%H:%i:%s')

但是这个返回 0 列,同样反转符号会产生相同的结果。我想不出任何其他方法可以做到这一点。

最佳答案

您想要排除在指定时间开始或结束的所有结果吗?从你的问题中尚不清楚。如果是,那么相关部分可能是...

AND ( 
T1.SCHEDULE_START <= DATE_FORMAT('2014-08-06 07:50:00', '%H:%i:%s')
OR T1.SCHEDULE_START >= DATE_FORMAT('2014-08-06 08:35:00', '%H:%i:%s')
)
AND (
T1.SCHEDULE_END <= DATE_FORMAT('2014-08-06 07:50:00', '%H:%i:%s')
OR T1.SCHEDULE_END >= DATE_FORMAT('2014-08-06 08:35:00', '%H:%i:%s')
)

关于mysql - x 和 y 值之间有 2 列 mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25100588/

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