求sql语句

TM_LiuYan 2007-09-07 05:11:20
id inCome outCome endCome changeDate

1 2 2 0 2002-12-03
1 10 1 0 2002-02-03
1 30 2 0 2002-01-03
2 40 10 0 2002-03-04
2 30 20 0 2002-03-03
----------------------------------------------
要求:
根据id:
结果:
id inCome outCome endCome
1 2 2 0
1 10 1 9 -----为9+0 endCome
1 30 20 19 ===30-20+9 endcome
2 40 10 30
2 30 20 40
-------------------------------------
endcome=isnull(sum(cast(inCome as money)-sum(cast(outcome as money)),0)
...全文
156 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
NoEveR527 2007-09-18
  • 打赏
  • 举报
回复
endcome(n)=income(n)-outcome(n)+endcome(n-1)
TM_LiuYan 2007-09-14
  • 打赏
  • 举报
回复
javaCoffee33(EastenStar) ( ) 信誉:100
解决了,后来就是按照这种方法做的,谢谢
firein 2007-09-07
  • 打赏
  • 举报
回复
全部检索出来 放在GRID里 用代码计算完再更新
Creazy_David 2007-09-07
  • 打赏
  • 举报
回复
一条语句没法搞定的,
每新增时,去取数据得到当前的endcome后,再与当前数据合并,再入库吧。
哈哈~~~
javaCoffee33 2007-09-07
  • 打赏
  • 举报
回复
明白你的意思了,阶段是按照 ID 计算的吗? 那按照什么排序呢?一个SQL 好象解决不了,

你就在每插入一条记录的时候将ENDCOME 计算更新一下就可以了
bengo420 2007-09-07
  • 打赏
  • 举报
回复
数据规律太高升,没看懂
TM_LiuYan 2007-09-07
  • 打赏
  • 举报
回复
就是相当与阶段性的求endcome的值,
TM_LiuYan 2007-09-07
  • 打赏
  • 举报
回复
数据库里增加income,或者outcome时,endcome的值为0,endcome=income-outcome
比如说:id =1 income=10 outcome=1 endcome=0 写入数据后,
接着增加一条数据id=1 income=20 ouccome=10 endcome=0

最后查询的结果为:
id income outcome endcome
1 10 1 9
1 20 10 19
sqllong 2007-09-07
  • 打赏
  • 举报
回复
1 30 20 19
中的20 应该是2吧?
sqllong 2007-09-07
  • 打赏
  • 举报
回复
能说说你数据的规律么?
TM_LiuYan 2007-09-07
  • 打赏
  • 举报
回复
5555555555555,没人回答吗?高手呢

110,532

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧