小编use*_*355的帖子

Oracle 无需子查询即可获取不同组的总和

我已经有一个工作示例,它完全满足我的需要。现在的问题是,我并不是真正喜欢子查询,我认为可能有更好的解决方案来解决这个问题。

这是我的(已经)工作示例:

with t as
(
select  'Group1' as maingroup,'Name 1' as subgroup, 'random' as random, 500 as subgroupbudget from dual
union all
select 'Group1','Name 1','random2',500 from dual
union all
select 'Group1','Name 2','random3', 500 from dual
union all
select 'Group2','Name 3','random4', 500 from dual
union all
select 'Group2','Name 4','random5',500 from dual
union all
select 'Group2','Name 5', 'random6',500 from dual
)
select
maingroup,
subgroup,
random,
(select distinct sum(subgroupbudget) over(partition by maingroup) from t b where a.maingroup=b.maingroup group by maingroup,subgroup,subgroupbudget) groupbudget
from …
Run Code Online (Sandbox Code Playgroud)

sql oracle group-by sum partition

5
推荐指数
1
解决办法
1141
查看次数

标签 统计

group-by ×1

oracle ×1

partition ×1

sql ×1

sum ×1