猿问

按小时预订房间

我创建了一个酒店预订系统,客户可以按小时预订酒店。问题是,在进行搜索查询时,我创建了 2 个表


1 Hotel_rooms 2 Room_bookings


现在进行搜索查询,我做了以下


SELECT * 

FROM   `room_bookings` 

WHERE  room_id = 103 

       AND check_in_date = '20-6-2018' 

       AND check_in_time != '2:15' 

       AND check_out_time < '2:15' 

现在这是一个非常错误的场景,根据此查询无法正常工作假设用户为房间号 103 选择入住时间为下午 4 点 15 分,它应该向我显示结果,因为此时无法预订此房间从 3:15 到 5:15,房间 103 已经被占用,所以它应该显示房间将在 5:15 之后可用,或者它应该在同一时间显示其他可用房间我相信这可以通过进行简单的查询来完成?或者我走错了路有人可以帮我吗


慕田峪7331174
浏览 113回答 1
1回答

阿晨1998

假设您的客户在 14:00 到 15:00 入住了 1 小时,那么这应该是您查询此期间是否有可用房间的查询。桌子会像id&nbsp; room check_in_Time&nbsp; check_out_Time&nbsp; &nbsp;check_in_date1&nbsp; &nbsp;102&nbsp; &nbsp;14:00&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;15:00&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 20-6-2018所以你的查询将是SELECT * FROM `room_bookings`&nbsp;&nbsp;WHERE room_id = 103&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;AND check_in_date = '20-6-2018'&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;AND check_in_time <= '15:00'&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;AND check_out_time >= '14:00'
随时随地看视频慕课网APP
我要回答