
在sql的查询的每一行结果中,加入一个根据每行金额加减的字段
查询结果类始于下面:日期单据类型往来单位应付增加应付减少应付余额20120101入库单联想100001000020120101入库单联想20000300002012010...
查询结果类始于下面:
日期 单据类型 往来单位 应付增加 应付减少 应付余额
20120101 入库单 联想 10000 10000
20120101 入库单 联想 20000 30000
20120101 入库单 联想 30000 40000
20120101 付款单 联想 10000 30000
说明:应付余额就是需要加减金额的字段,怎么弄?除开应付余额字段其他字段都是表里面可以查询的到的,谢谢各位大大给我点帮助 展开
日期 单据类型 往来单位 应付增加 应付减少 应付余额
20120101 入库单 联想 10000 10000
20120101 入库单 联想 20000 30000
20120101 入库单 联想 30000 40000
20120101 付款单 联想 10000 30000
说明:应付余额就是需要加减金额的字段,怎么弄?除开应付余额字段其他字段都是表里面可以查询的到的,谢谢各位大大给我点帮助 展开
展开全部
select a.*,
(sum(nvl(应付增加,0)) over(order by nvl(应付增加,0)))-
(sum(nvl(应付减少,0)) over(order by nvl(应付减少,0)))
form A ;
其中sum(字段) over(order by 字段),这个是累加求和的。
(sum(nvl(应付增加,0)) over(order by nvl(应付增加,0)))-
(sum(nvl(应付减少,0)) over(order by nvl(应付减少,0)))
form A ;
其中sum(字段) over(order by 字段),这个是累加求和的。
追问
我是SQL2000的数据库不支持这个
追答
SQL2000我不是很熟悉,但是你这里就是一个累加求和,可以参考http://blog.csdn.net/zhou968/article/details/2493122
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是查询还是更新?
select *, (isnull(应付增加, 0) - isnull(应付减少, 0)) as 应付余额 from 表
select *, (isnull(应付增加, 0) - isnull(应付减少, 0)) as 应付余额 from 表
追问
是查询,需要把上一行的应付余额做一个累加怎么弄,一行行的结果没有价值,需要一个累加值
追答
这个意思啊,需要知道是按什么排序的,时间么,不排序没法做,私信吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select *,金额表动=应付余额+应付增加-应付减少 from 表
没关注,还是这一句
没关注,还是这一句
追问
应付余额是我想增加的字段哦
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询