這裏是我的數據庫(在酒店免費客房,簡體)的MySQL查詢日期範圍
rooms_available:
id date_available room_id
================================
1 2013-12-19 2
2 2013-12-20 2
3 2013-12-21 2
4 2013-12-22 2
5 2013-12-23 2
6 2013-12-25 3
客房:
id name minimal_range
================================
2 Apartment A 5
3 Apartment B 1
我想查詢所有2013年12月20日至2013年12月22日和2013年12月22日期間可以使用的客房 -
我的查詢是這樣的:
select *
from rooms_available
where (date='2013-12-20' OR date='2013-12-21' OR date='2013-12-22')
我的問題:
- 是有一個更舒適的方式?當日期範圍爲2周時,查詢也會很長(查詢需要更長的時間)
- 是否可以考慮最小範圍 - 例如:room_id 2僅適用於至少5晚(見表 「房間」) - >所以上面的查詢應返回任何記錄
感謝
我懷疑這是更常見的存儲房間時,而不是當他們可用 – Strawberry
這個問題被問了100次左右,所以你可能想要檢查下次已經回答的問題 – jeroenvisser101