我有一个看起来像这样的表:
ID | Value | Date
1 | 3000 | 25/06
1 | 3000 | 26/06
1 | 2000 | 12/07
2 | 4000 | 23/12
2 | 4000 | 12/12
3 | 2000 | 01/11
3 | 2000 | 23/04
3 | 4000 | 23/05
3 | 4000 | 04/11
现在,我想显示特定ID的唯一值,以及每个特定值在表中显示特定ID的次数。
所需的输出
select ### where ID = 1 from tablename; would be:
distinct Value | count
3000 | 2
2000 | 1
以及:
select ### where ID = 3 from tablename;
distinct Value | count
2000 | 2
4000 | 2
可以使用单个select语句(针对每个ID)完成此操作吗?
答案 0 :(得分:0)
也许是这样的:
select ID
, Value
, Count(*) AS CountOfValues
from tablename
group by ID, Value
只需按ID和值进行分组,然后根据这些分组集计算值出现的次数。