我需要能夠檢查用戶給出的日期範圍是否可用。我在我的數據庫中有一張名爲booked
的表格,其中包含開始日期,結束日期以及該時段已預訂的房間數量。特定時間內的可用房間數量?
比方說我booked
表看起來像這樣:
room_id | start | end | amount_of_rooms_booked
1 | 2012-12-12 | 2012-12-15 | 2
1 | 2012-12-13 | 2012-12-16 | 3
1 | 2012-12-18 | 2012-12-19 | 1
如果有8間客房總數可供room_id
1,和用戶要求這個房間2012-12-10
和2012-12-20
之間,是有可能做一個查詢檢查已預訂的每一天房間SUM
是否不超過8
的另一種方式,我可以做到這將是單獨存儲的每一天,並有booked
表像這個:
room_id | start | amount_of_rooms_booked
1 | 2012-12-12 | 2
1 | 2012-12-13 | 5
1 | 2012-12-14 | 5
1 | 2012-12-15 | 3
1 | 2012-12-18 | 1
這樣會在數據庫中使用更多的空間,但可能會更容易。我該怎麼辦?如果第一個想法如何執行查詢?有沒有其他更好的方法來實現我想要做的事情?
什麼'room_id'的含義是什麼? –