SQL 计算累计差,计算某个数值列的累计差。例如,希望计算 DEPTNO
等于 10 的部门里员工工资的累计差,并且得到如下所示的结果集。
SQL 计算累计差 问题描述
计算某个数值列的累计差。例如,希望计算 DEPTNO
等于 10 的部门里员工工资的累计差,并且得到如下所示的结果集。
SQL 计算累计差 解决方案
DB2 和 Oracle
使用窗口函数 SUM OVER
计算累计差。
MySQL、PostgreSQL 和 SQL Server
使用标量子查询计算累计差。
SQL 计算累计差 扩展知识
本实例的解决方案和 7.6 节的类似。唯一的不同之处在于 SAL
的结果都是负数,当然第一行除外(本例把 DEPTNO
等于 10 的第一个 SAL
值作为起点)。