有这样一个问题:如何按时间求累计值如下表所示
日期 |
数值 |
2005-5-1 |
2.4 |
2005-5-2 |
2 |
2005-5-3 |
5 |
2005-5-4 |
3.5 |
要实现如下结果:
日期 |
数值 |
累计 |
2005-5-1 |
2.4 |
2.4 |
2005-5-2 |
2 |
4.4 |
2005-5-3 |
5 |
9.4 |
2005-5-4 |
3.5 |
12.9 |
使用如下sql语句就能实现以上功能了
--累计计算
SELECT aa.日期, aa.数值, SUM(lj.数值) AS 累计
FROM 累积 lj INNER JOIN
(SELECT *
FROM 累积) aa ON lj.日期 <= aa.日期
WHERE (aa.日期 <= '2005-05-04') --日期可以变成时间段
GROUP BY aa.日期, aa.数值
ORDER BY aa.日期
来源:博远电子(软件定制),如涉及版权问题请与我们联系。
TAG
软件定制,软件开发,瀚森HANSEN