我有一个非常简单的问题,就是在SQL中找到分配给所有可用 Room_No 的 ID 。例如:在下表中共有三个独特的房间,即 100,400 和 600 ,并且只有一个ID,即 1 ,分配给所有可用的房间。我无法找到正确的查询来执行此操作。请帮忙
表数据
Room_No Id
400 1
100 2
600 3
100 1
400 1
600 1
答案 0 :(得分:1)
你可以通过聚合和having
子句来做到这一点:
select id
from data
group by id
having count(distinct room_no) = (select count(distinct room_no) from data);