|
|
原帖由 zs_netjun 于 2009-9-28 13:47 发表 ![]()
编号也不是连续的
编号 日期 借项 贷项
1 2009-09-09 100
5 2009-09-09 50
13 2009-09-11 250
24 2009-09-12 80
35 2009-09-13 40
46 2009-09-14 150
--结果数据
编号 日期 借项 贷项 余额
1 2009-09-09 100 100
5 2009-09-09 50 50
13 2009-09-11 250 300
24 2009-09-12 80 380
35 2009-09-13 40 420
46 2009-09-14 150 270
完全可以用视图, 报表的数据源可以基于如下创建的视图!
具体如下:
SQL> select * from test;
BH RQ JK DK
---------- ----------- ---------- ----------
1 2009-9-9 100
2 2009-9-10 50
3 2009-9-11 250
4 2009-9-12 80
5 2009-9-13 40
6 2009-9-14 150
6 rows selected
SQL>
SQL> select bh "编号",
2 rq "日期",
3 jk "借项",
4 dk "贷项",
5 sum(nvl(jk, 0) - nvl(dk,0)) over(order by rq, bh) "余额"
6 from test;
编号 日期 借项 贷项 余额
---------- ----------- ---------- ---------- ----------
1 2009-9-9 100 100
2 2009-9-10 50 50
3 2009-9-11 250 300
4 2009-9-12 80 380
5 2009-9-13 40 420
6 2009-9-14 150 270
6 rows selected
SQL>
-----------------------------------------------------------------------------------
--第2种情况
SQL> select * from test;
BH RQ JK DK
---------- ----------- ---------- ----------
1 2009-9-9 100
5 2009-9-9 50
13 2009-9-11 250
24 2009-9-12 80
35 2009-9-13 40
46 2009-9-14 150
6 rows selected
SQL>
SQL> select bh "编号",
2 rq "日期",
3 jk "借项",
4 dk "贷项",
5 sum(nvl(jk, 0) - nvl(dk,0)) over(order by rq, bh) "余额"
6 from test;
编号 日期 借项 贷项 余额
---------- ----------- ---------- ---------- ----------
1 2009-9-9 100 100
5 2009-9-9 50 50
13 2009-9-11 250 300
24 2009-9-12 80 380
35 2009-9-13 40 420
46 2009-9-14 150 270
6 rows selected
SQL>
[ 本帖最后由 bell6248 于 2009-9-28 14:00 编辑 ] |
|