[英]retrieve unique hotel id for users for booking system
我有一個與SQL有關的問題。 我需要為下面描述的表編寫一個復雜的查詢
id date quantity roomtypeid hotelid
用戶將使用入住和退房日期搜索酒店,並在搜索查詢中指定房間數(數量),因此我需要做的就是從上表中獲取具有最少入住數量的酒店ID。日期。
1 04-01-2013 3 4 10
2 04-02-2013 3 4 10
3 04-03-2013 3 4 10
4 04-04-2013 3 4 10
5 04-01-2013 3 4 11
6 04-02-2013 3 4 11
7 04-03-2013 3 4 11
8 04-04-2013 3 4 11
9 04-01-2013 3 4 12
10 04-02-2013 3 4 12
如果用戶希望在2013年4月1日至2013年3月4日預訂3個房間,則結果查詢僅應提供10,11作為酒店ID。
關於Subash
更新2
SELECT `hotelid`
FROM table1
WHERE `date` BETWEEN '2013-04-01' AND '2013-04-03'
AND quantity >=3
GROUP BY `hotelid`
HAVING COUNT(*) = DATEDIFF('2013-04-03', '2013-04-01') + 1
WHERE
子句中的3是應有的多個房間。
輸出量
| HOTELID |
-----------
| 10 |
| 11 |
SELECT DISTINCT(`hotelid`) FROM `tableName` WHERE `date` = $checkindate AND `date` = $checkoutdate AND `quantity` = $numberofroom
使用上面的查詢。 它只是虛擬查詢,可根據您的要求進行修改(字段名和變量名)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.