tsql 数据累计

防止自己忘了。

有这样一个问题:如何按时间求累计值如下表所示 日期  数值
 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 bb.日期, bb.数值, SUM(aa.数值) AS 累计
FROM 累积 as aa INNER JOIN
          累积 bb ON aa.日期 <= bb.日期
WHERE (aa.日期 <= '2012-05-04')   --日期可以变成时间段
GROUP BY bb.日期, bb.数值
ORDER BY bb.日期

原文地址:https://www.cnblogs.com/sycdirdir/p/2742603.html