我的数据库有2列p& f都是整数类型;
表格包含以下条目
p f
1 5
1 6
2 5
3 6
4 5
4 6
我想用p获取记录,其中f是5& f是6
所以实际上我想要输出为
p
1
4
当我尝试
时select p from temp where f=5 or f=6
它给了我所有p的输出
答案 0 :(得分:1)
按p
分组,只选择同时拥有f
:
select p
from temp
where f in (5,6)
group by p
having count(f) = 2
使用having count(f) = 2
,您只能获得不仅仅是您正在寻找的f
之一的群组。如果您检查3 f
,则查询将为select p from temp where f in (5,6,7) group by p having count(f) = 3
。
答案 1 :(得分:0)
我想你需要DISTINCT
SELECT DISTINCT p
FROM temp
WHERE f=5 or f=6
答案 2 :(得分:-1)
试试这个。
select p from temp where f in (5, 6);
希望这会有所帮助