首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Oracle窗口函数中的Sum

Oracle窗口函数中的Sum
EN

Stack Overflow用户
提问于 2013-01-03 20:20:21
回答 1查看 1.8K关注 0票数 3

谁能告诉我在下面的代码片段中,sum在oracle分区的sum (SUM(SUM(VAL)))中的意义是什么?

代码语言:javascript
复制
SELECT NMS,
       SUM(SUM(VAL)) OVER(PARTITION BY NMS),  ---- SIGNIFICANCE
       EMPNO,
       SUM(SUM(VAL)) OVER(PARTITION BY EMPNO)   ---- SIGNIFICANCE
  FROM PART_TEST_PART
 GROUP BY NMS, EMPNO;
EN

回答 1

Stack Overflow用户

发布于 2013-01-03 20:45:59

它计算每个NMS (对于第一个)和EMPNO (对于第二个)的VAL的总和。

首先计算group by + SUM(VAL),然后分析根据该结果进行计算。

例如,如果在group by of之后有结果

代码语言:javascript
复制
EMPNO  NMS SUM(VAL)
1      a   15
1      b   24
2      a   50

你会有SUM(SUM(VAL)) OVER(PARTITION BY NMS)作为

代码语言:javascript
复制
EMPNO  NMS SUM(VAL) SUM(SUM(VAL)) OVER(PARTITION BY NMS)
1      a   15       65  (15+50 for NMS = a)
1      b   24       24  (24 for NMS = b)
2      a   50       65  (15+50 for NMS = a)

你会有SUM(SUM(VAL)) OVER(PARTITION BY EMPNO)作为

代码语言:javascript
复制
EMPNO  NMS SUM(VAL) SUM(SUM(VAL)) OVER(PARTITION BY EMPNO)
1      a   15       39  (15+24 for EMPNO = 1)
1      b   24       39  (15+24 for EMPNO = 1)
2      a   50       50  (50 for EMPNO = 2)
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14138846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档