在SQL Oracle中进行求和的组

时间:2015-10-06 12:15:23

标签: sql oracle

在下表中,我需要对COL3和COL5求和,按COL2NAME分组。 所以会有3行:

DC
Cred
Equi

...使用COL3和COL5的总和值。

我怎么能这样做?

Oracle Developer

以下是截图中的查询:

select t.*
from (select COL1, COL2 as COL2NAME, sum(COL3A+COL3B) as COL3,
COL4 as COL4NAME, count(COL5NO) as COL5, DENSE_RANK()OVER(ORDER BY COL1) GROUPID
      from TAB
      group by COL1, COL2, COL4
     ) t
where GROUPID = 1
or GROUPID = 2

1 个答案:

答案 0 :(得分:3)

所以只需添加group by

select col2name, sum(col3 + col5)
from (select COL1, COL2 as COL2NAME, sum(COL3A+COL3B) as COL3,
             COL4 as COL4NAME, count(COL5NO) as COL5,
             DENSE_RANK() OVER (ORDER BY COL1) as GROUPID
      from TAB
      group by COL1, COL2, COL4
     ) t
where GROUPID IN (1, 2)
group by col2name;