oracle 分析函数之 over 用法
来源:互联网 发布:ajax后台获取前端数据 编辑:程序博客网 时间:2024/06/06 20:23
本文转载自: http://blog.csdn.net/mantisxf/article/details/1695441
仅供个人学习提高使用。
Oracle 语法之 OVER (PARTITION BY ..)
select * from test
数据:
A B C
1 1 1
1 2 2
1 3 3
2 2 5
3 4 6
---将B列值相同的对应的C 列值加总
select a,b,c, SUM(C) OVER (PARTITION BY B) C_Sum
from test
A B C C_SUM
1 1 1 1
1 2 2 7
2 2 5 7
1 3 3 3
3 4 6 6
PARTITION BY B : 把B列进行分割(本人觉得分割有点类似于分组group by,但不等于分组)
我们先来分析一下 C_SUM 的结果是怎么出来的.
B 列总共有四个值: 1 2 3 4. 第一行的C_SUM值为1, 因为所对应的C列值为1; 第二行的C_SUM值为7. 为什么呢?因为B列中值为2的行总共有两列,所以 SUM(C) 的值为 7 (等于两个C列的相加 2+5 = 7). B列下面的值3 4原理同第一列的值1.
---如果不需要以某个列的值分割,那就要用 null
eg: 就是将C的列值summary 放在每行后面
select a,b,c, SUM(C) OVER (PARTITION BY null) C_Sum
from test
A B C C_SUM
1 1 1 17
1 2 2 17
1 3 3 17
2 2 5 17
3 4 6 17
因为没有分割列,所以C_SUM的值为所有C列的值的和. 17=1+2+3+5+6.
- oracle 分析函数之 over 用法
- oracle 分析函数之 over 用法
- Oracle开发专题之:分析函数(OVER)用法
- Oracle 分析函数之over()
- oracle分析函数之over()
- Oracle之over分析函数
- oracle分析函数over的用法
- oracle row_number() over()分析函数用法
- oracle中row_number() over()分析函数用法
- oracle中row_number() over()分析函数用法
- oracle中over()分析函数的用法
- Oracle分析函数OVER的用法
- oracle中row_number() over()分析函数用法
- oracle中over()分析函数的用法
- over oracle分析函数的用法
- Oracle开发专题之:分析函数(OVER)
- Oracle开发专题之:分析函数(OVER)
- Oracle开发专题之:分析函数(OVER)
- C实现字符串的移动
- 讲讲Mysql中的校对规则究竟是怎么一回事
- the arcsde repository was unsuccessfully completed
- 京东项目总结
- android课程笔记之Hello Android!
- oracle 分析函数之 over 用法
- 软考复习体会
- OpenCV学习笔记(十四)——图像结构分析与形状描述ImgProc
- 用PB内部函数更改PB自带Toolbar的字体
- Android中Map应用开发进阶
- 对构造器的认识
- GetWindowRect与GetClientRect
- powerdesigner 常用快捷键
- IO(Input Output)流