gpt4 book ai didi

Mysql:日期比较和连接

转载 作者:行者123 更新时间:2023-11-29 12:22:28 28 4
gpt4 key购买 nike

我正在尝试运行查询来提取可用房间,它会加入预订表以查看给定时间段(开始和结束日期)的可用房间。我在这里画了一个空白,我认为这是一个非常简单的查询,我只是想不出创建它的最佳方法。

到目前为止我需要修复的内容

   SELECT *
FROM room
LEFT JOIN reservation ON room.id = reservation.room_id
WHERE reservation.id is null or
:startdate > reservation.enddate or
:enddate < reservation.startdate

我的上述查询将返回具有多个预订的房间的结果,这些预订可能满足 where 子句,即使在日期范围内可能有预订。

最佳答案

我会使用一个我觉得直观的不存在谓词来做到这一点:

SELECT *
FROM room
WHERE NOT EXISTS (
SELECT *
FROM reservation
WHERE room.id = room_id
AND
:startdate < enddate
AND
startdate < :enddate)

逻辑表示返回给定日期之间不存在任何相关预订的所有房间

关于Mysql:日期比较和连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28819841/

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