Sql 选择字段1,其中字段2='value1'和字段2='value2',如果字段1相同

Sql 选择字段1,其中字段2='value1'和字段2='value2',如果字段1相同,sql,select,count,having-clause,Sql,Select,Count,Having Clause,我目前在筛选SQL记录时遇到问题。我需要一些类似于它在以下概念中的结果的东西:表是 我想选择A的值,其中B=1,B=2,B=3,当A相同时。。。。结果是 A 2 请提供帮助您可以使用聚合: select a from mytable where b in (1, 2, 3) group by a having count(*) = 3 这假设表中没有重复项-否则,您需要将having子句更改为: having count(distinct b) = 3 谢谢,但当表中有三组记录A、B具有相

我目前在筛选SQL记录时遇到问题。我需要一些类似于它在以下概念中的结果的东西:表是

我想选择A的值,其中B=1,B=2,B=3,当A相同时。。。。结果是

A 2
请提供帮助

您可以使用聚合:

select a
from mytable
where b in (1, 2, 3)
group by a
having count(*) = 3
这假设表中没有重复项-否则,您需要将having子句更改为:

having count(distinct b) = 3

谢谢,但当表中有三组记录A、B具有相同的值时,结果是不正确的。如果存在三次相同的记录,如A=4,B=1,则不成功。help@PLAAHemantha . . . 答案用COUNTDISTINCT解决了这个问题。你应该接受答案。
having count(distinct b) = 3