SQL Server-从上一行中乘以产品的最后一个值

时间:2019-02-13 15:43:40

标签: sql-server sql-server-2012 sql-server-2012-express

希望此消息对大家都有益!

我在SQL Server 12上遇到了问题,正在寻找解决的办法(或至少是火花)!

我有一个事实表,每天记录几笔交易。我正在寻找一种方法,可以用所有先前交易的总和减去最后交易。这将在新列中(作为余额)。

例如:

日期| AccountCode |价值| AccountBalance

01/02 | 19 | 30 | 30

05/02 | 19 | -30 | 0

15/02 | 19 | 200 | 200

20/02 | 19 | -30 | 170

我尝试执行以下代码,但不适用于我。该查询的结果与乘积之和无关,而仅与前一行有关。

  

选择AccountCode,   值,   值+合并(滞后(值)超过(按日期排序),0)作为AccountBalance,   日期

     

来自factTable

此查询显示以下结果:

日期| AccountCode |价值| AccountBalance

01/02 | 19 | 30 | 30

05/02 | 19 | -30 | 0

15/02 | 19 | 200 | 170

20/02 | 19 | -30 | 170

28/02 | 19 | -30 | 0

0 个答案:

没有答案