我有一个有三列的表:
A B C 1 2 2 2 2 2 3 1 1 4 1 2
我想要那些C等于2但具有不同B值的值的计数
因此,在这种情况下,对于C = 2,count = 2(B = 2且B = 1)
我使用了以下命令:
Select count(*) from mytable where C=2 group by (B)
但它产生了:
count(*) 3
我尝试使用“distinct”,但不能用于从一列中选择
答案 0 :(得分:1)
你试过吗
SELECT COUNT(DISTINCT B) FROM mytable WHERE C = 2;
答案 1 :(得分:1)
使用这样的子查询:
Select count(*) from (
select distinct B where c=2
)