我有这张 table
**Rooms**
idRoom
name
**Room_details**
idRoomDetails
idRoom
idRoomType
**Bookings**
idBooking
idRoomDetails
startDate
endDate
带有 * * 的单词是表格名称
我拥有的变量是 idRoomType 、 startDate 、 endDate 。
如何输出所有可用的房间,并且给定的参数为房间类型、
startDate
和endDate
?
老实说,我现在不知道如何开始,这就是为什么我无法向您展示我到目前为止所做的事情。
我们将非常感谢您的帮助!谢谢! :)
最佳答案
如果日期选择是您的问题,那么我可以为您提供一些有用的见解。您应该在查询结构中选择具有以下条件的所有房间;
Booking.startDate <= "End date of the availability period you're checking"
Booking.endDate >= "Start date of the availability period you're checking"
为了更清楚地说明,您的查询可能如下所示:
SELECT * FROM Rooms
INNER JOIN Room_details ON Rooms.idRoom = Room_details.idRoom
LEFT JOIN Bookings ON Room_details.idRoomDetails = Bookings.idRoomDetails
WHERE Bookings.idBooking IS NULL
OR (Bookings.startDate <= 'availabilityEndDate'
AND Bookings.endDate >= 'availabilityStartDate')
其中“availabilityEndDate”和“availabilityStartDate”当然需要替换为实际日期。
关于php - 检查可用房间的参数为房间类型、开始日期和结束日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17927182/