0

我需要总结 sql 2005 中的前几行。这是我的表

id  date     valuein     valueout    misstotal     
5   2/2/2013    0            500       -500    
2  25/2/2013    0            300       -300
7  25/2/2013    900          0          900
4  25/2/2013   2000          0          2000

misstotal = ( valuein - valueout)

这不是问题

我希望一列的总余额如下表所示total

id  date     valuein     valueout    misstotal     total
5   2/2/2013    0            500       -500         -500
2  25/2/2013    0            300       -300         -800
7  25/2/2013    900          0          900          100
4  25/2/2013   2000          0          2000         2100

那么做这个总和的代码是什么?

4

1 回答 1

0

这篇博文为您提供了一些用于计算 SQL Server 2005 中运行总计的选项:

http://geekswithblogs.net/Rhames/archive/2008/10/28/calculating-running-totals-in-sql-server-2005---the-optimal.aspx

一个好方法是将数据插入临时表,然后更新此表以填充运行总计列,如下所示:

SET @RunningTotal = 0 

UPDATE @TmpTable
SET @RunningTotal = total = @RunningTotal + misstotal
FROM @TmpTable

SELECT * FROM @TmpTable
于 2013-03-07T12:22:40.357 回答