oracle sql查询问题(按2列分组)

时间:2011-06-04 11:00:52

标签: sql oracle aggregate-functions

我的数据库中有一个名为testgroup的表,如下所示:

I                      J                      
---------------------- ---------------------- 
1                      a                      
1                      a                      
2                      a 
1                      b                      
1                      c                      
2                      b      
3                      d    
2                      b 
2                      b
3                      d        

现在,我希望得到如下结果:

I                      J                      COUNT(J) in I 
---------------------- ---------------------- ----------------------
1                      a                      2                    
2                      a                      1
1                      b                      1
1                      c                      1
2                      b                      3    
3                      d                      2            

...其中count(j) in I是与I.相关的每个J的编号 例如:使用I = 1,第J列中有2 a,因此第三列将等于2.

2 个答案:

答案 0 :(得分:14)

select I, J, count(*) as JinI
FROM atable
GROUP BY I, J

答案 1 :(得分:7)

实际上问题是关于计算I和J对:

select I, J, count(*) from tblName group by I, J