假设我有一个包含以下数据的表:
foreign-key | feature
1 | a
1 | b
2 | a
2 | b
2 | c
3 | a
3 | c
我想要一个语句,它返回一个唯一的键列表,这些键同时分配了特性a和特性b,因此结果行应该是“1,2”。
假设我想在查询中添加额外的约束,那么如果不将整个内容嵌套到多个层中就好了。
最佳答案
这可以通过group by
和having
来实现。
select foreign-key
from tbl
where feature in ('a','b')
group by foreign-key
having count(distinct feature)=2