sum over主要用来对某个字段值进行累加,对于统计很管用,如有下表:
Name, Salary, Age
A,900, 20
B,900, 21
C,1000, 18
D,950, 20
需要按下面样式统计
Name, Salary, SubSal
A, 900, 900
B, 900, 1800
D, 950, 2750
C, 1000, 3750
实现代码如下:
select Name, Salary, sum(Salary) over(order by Salary,Name) SubSal from emp order by Salary;
如果salary没有重复的,order by只要salary字段就行