2014-11-23 25 views
0

我有一個非常簡單的問題,在SQL中查找ID,分配給所有可用的Room_No。例如:在下表中,總共有三個獨特的房間,即100,400和,並且只有一個ID,即分配給所有可用房間的。而且我無法找到正確的查詢來執行此操作。請幫助SQL Query查找分配給所有可用房間號的ID

表數據

Room_No Id 
400  1 
100  2 
600  3 
100  1 
400  1 
600  1 
+1

HAVING COUNT(DISTINCT room_no)= 3 – Strawberry 2014-11-23 22:16:55

+0

客房數量可以超過3。我只需要查詢即可查找分配給該表中所有可用房間的所有ID。 – user3667167 2014-11-23 22:18:00

+0

對不起,我是SQL新手所以不明白.. – user3667167 2014-11-23 22:31:52

回答

1

你可以聚集和having條款做到這一點:

select id 
from data 
group by id 
having count(distinct room_no) = (select count(distinct room_no) from data); 
+0

我從來沒有想過它會如此複雜,但最終它的工作謝謝:) – user3667167 2014-11-23 22:29:45