Sql 从存款和取款中计算余额

Sql 从存款和取款中计算余额,sql,sql-server,Sql,Sql Server,这是我想要的表名CashTrasaction: 我想余额栏自动计算存款和取款,存款增加余额的值,取款从余额中减去。 帮我怎么计算 试试这个脚本会给你预期的结果 ;WITH cte(AcNO,Dates,CheaqueNo,CompanyId,Deposit,Withdraw,Balance) AS ( SELECT 2014002,2017-12-19,12500,1,1000.00,0.00,1000.00 Union all SELECT 30520,2017-11-13,12500,7

这是我想要的表名CashTrasaction:

我想余额栏自动计算存款和取款,存款增加余额的值,取款从余额中减去。
帮我怎么计算

试试这个脚本会给你预期的结果

;WITH cte(AcNO,Dates,CheaqueNo,CompanyId,Deposit,Withdraw,Balance)
AS
(
SELECT 2014002,2017-12-19,12500,1,1000.00,0.00,1000.00  Union all
SELECT 30520,2017-11-13,12500,7,0.00,500.00,500.00      Union all
SELECT 50021,2017-10-19,1210,45,2500.00,100.00,2900.00  Union all
SELECT 54201,2017-11-29,121100,22,6000.00,0.00,8900 
)
SELECT * ,(SUM(Deposit)OVER(PArtition by AcNO Order by AcNO)
           +SUM(Balance)OVER(PArtition by AcNO Order by AcNO)
           -SUM(Withdraw)OVER(PArtition by AcNO Order by AcNO)
           )  AS CurrentBalance
FROM cte
结果

AcNO    Dates   CheaqueNo   CompanyId   Deposit Withdraw    Balance CurrentBalance
-----------------------------------------------------------------------------------
30520   1993    12500           7       0.00     500.00     500.00     0.00
50021   1988    1210            45      2500.00  100.00     2900.00    5300.00
54201   1977    121100          22      6000.00  0.00       8900.00    14900.00
2014002 1986    12500           1       1000.00  0.00       1000.00    2000.00

存储余额值通常是一个错误——它所增加的只是它出错的机会。如果您需要正确的余额,您可以在检索期间始终计算它们。将每个交易逐行添加到其他表中。请帮助我如何计算!什么,怎么减法?或者你知道怎么做,并询问如何制作计算列?你没有找到任何关于这个的文件吗?