SQL 下一行的一列要等于上一行某一列 如何实现

例如: 表a
id date balance changemoney xiaofei carbalance cntbalance
001 201103 50 50 25 75 75
002 201104 70 50 100 20 20
第一:第一行要自动计算 cntbalance=carbalance=balance+changemoney-xiaofei
第二:第二行的 balance=上一行的cntbalane

要如何实现?

第1个回答  2012-12-11
用单一SQL应该实现不了,如果要更新每一行数据,
第二行的规则是不是不完整?第三行及后续数据的规则呢?
建议用存储过程。如果需要完善下规则我给你个例子追问

规则是这样的:1 首先前一行要自动计算,公式就是我问题的“第一”里面的,然后后一行,先要让第二行的balance=上一行的cntbalance,然后,在计算“第一”里面的公式,然后如此循环下去

应为我只能确定我表里面 第一行的数据以及 changemoney和xiaofei这2列里面的数据是正确的。要想要这样来自动重算,批量修改我的数据

第2个回答  2012-12-12
如果只是单一还好处理,因为你也说了某一行。所以没办法确定,然后两者之间也没有很联系
第3个回答  2012-12-13
为什么一定要用SQL语句来解决,用程序控制不更容易实现么?
相似回答