【发布时间】:2020-04-01 16:31:13
【问题描述】:
我有两张这样的表:
Room
-----------------
id
和
Reservation
-----------------
id
room_id
check_in
check_out
我的目标是在特定的入住和退房期间获得所有没有预订的房间。
到目前为止,我已经设法构建这样的查询:
select * from room
where room.id not in (
select room2.id from room as room2
inner join reservation r on room2.id = r.room_id
where r.check_in > '2020-04-19' and r.check_out < '2020-04-25');
但我相信必须有一个更优化的方法来做到这一点,使用左连接。
我怎样才能构建一个等效的查询,只使用连接?
【问题讨论】: