DROP TABLE [Testprice2010]
GO
CREATE TABLE [Testprice2010]
([ID] int,
[Price] float null
)
go
INSERT [Testprice2010]
SELECT 1,5 union all
SELECT 2,10 union all
SELECT 3,8 union all
SELECT 7,9
go
select ID as maxID,
(select sum([Price]) from Testprice2010 where ID<=p.[ID]) as TotalPrice
from [Testprice2010] p
drop table [Testprice2010]
go
首先,解决问题有很多的做法,我只推荐一个严谨的做法!【流水表】
日期,金额,余额
9.1 100 100
9.2 500 600
9.3 300 900
……
【余额表】
当前余额
900
每次插入新数据时(例如: 9.4 200 ),有如下步骤
1、将余额表里的余额查出来(900)
2、进行计算(900+200=1100)
3、用计算结果1100,更新余额表(UPDATE……)
4、将新数据插入流水表,(INSERT 流水表 VALUES(9.4,200,1100))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)