我目前正在制作酒店网站的项目,目前正在预订的概述中。

我现在拥有的查询跳过了关键步骤,但没有用,是否有人对此有解决方案

我曾尝试修改括号并在Google上搜索,但一无所获

的SQL

select *    from reservations   where room_id = 1     and (CURRENT_DATE > reservation_start AND CURRENT_DATE < reservation_end)      or (CURRENT_DATE > reservation_start - 7); 

当前,它获取的是所有房间,而不是已分配的房间。

===============>>#1 票数:2 已采纳

您需要使用CURRENT_DATE将条件放在方括号中,因为and绑定比or强:

select * from reservations  where room_id = 1  and ((CURRENT_DATE > reservations.reservation_start AND CURRENT_DATE < reservations.reservation_end)    or (CURRENT_DATE > reservations.reservation_start - 7) ); 

  ask by Robin translate from so

===============>>#2 票数:0

您在这里错过了括号。 并且查询的目的已经改变。

select * from reservations    where room_id = 1      and ((CURRENT_DATE > reservations.reservation_start AND           CURRENT_DATE < reservations.reservation_end) or            (CURRENT_DATE > reservations.reservation_start - 7)); 

  ask by Robin translate from so

本文未有回复,本站智能推荐: