|
看看下面的语句能否满足你的需求?
SQL> create table test_1
2 (type number,status varchar2(20),amout number)
3 /
表已创建。
SQL> insert into test_1
2 values(1,'err1',15)
3 /
已创建 1 行。
SQL> insert into test_1
2 values(1,'err2',28)
3 /
已创建 1 行。
SQL> insert into test_1
2 values(2,'err1',12)
3 /
已创建 1 行。
SQL> insert into test_1
2 values(2,'right',5)
3 /
已创建 1 行。
SQL> insert into test_1
2 values(3,'err2',10)
3 /
已创建 1 行。
SQL> commit
2 /
提交完成。
SQL>
SQL> select type,
2 sum(decode(status,'err1',amout,0)) err1,
3 sum(decode(status,'err2',amout,0)) err2,
4 sum(decode(status,'right',amout,0)) right
5 from test_1
6 group by type
7 /
TYPE ERR1 ERR2 RIGHT
---------- ---------- ---------- ----------
1 15 28 0
2 12 0 5
3 0 10 0
SQL>
SQL> |
|