有這樣一個問題,如何按日期累計值
如下表所示:
日期 數值
2009-02-05 2.4
2009-02-06 2
2009-02-07 5
2009-02-08 3.5
2009-02-05 2.4
2009-02-06 2
2009-02-07 5
2009-02-08 3.5
要實現如下結果:
日期 數值 累計
2009-02-05 2.4 2.4
2009-02-06 2 4.4
2009-02-07 5 9.4
2009-02-08 3.5 12.9
使用以下sql語句即可實現:
--累計計算
select aa.日期,aa.數值,sum(lj.數值) as 累計
from 累計 lj inner join
(select *
from 累計) aa on lj.日期<=aa.日期
where (aa.日期<='2009-02-08') --日期可變為時間段
group by aa.日期,aa.數值
order by aa.日期