1. 程式人生 > >7.07 生成累積乘積

7.07 生成累積乘積

解決 問題 生成 name lec 解決方案 沒有 tno rom

問題:計算某個數字列的累乘積。其操作方式與”計算累計和“相似,只是使用乘法而不是加法。
解決方案:作為例子,本解決方案中都計算職員工資的累乘積。雖然工資的累乘積沒有多大用處,然後可以很容易地把該技巧用於其他更有用的領域。

select e.empno,e.ename,e.sal,
(select exp(sum(ln(d.sal)))
from emp d
where d.empno<=e.empno and e.deptno=d.deptno) as running_prod
from emp e
where e.deptno=10;

7.07 生成累積乘積