模拟数据卡号 金额 缴费类型
cardasn amount type
001 10 1
001 40 1
001 50 2
001 60 3
002 10 2
002 60 2
002 90 4期望得到的查询结果是:(缴费类型只有4个)cardasn type1_amount type2_amount type3_amount type4_amount
001 50 50 60 0
002 0 70 0 90按卡号分大类,然后按缴费类型分小类统计出金额来 请问应该如何实现啊????
cardasn amount type
001 10 1
001 40 1
001 50 2
001 60 3
002 10 2
002 60 2
002 90 4期望得到的查询结果是:(缴费类型只有4个)cardasn type1_amount type2_amount type3_amount type4_amount
001 50 50 60 0
002 0 70 0 90按卡号分大类,然后按缴费类型分小类统计出金额来 请问应该如何实现啊????
解决方案 »
- sql难题
- oracle列转行的问题(在线等)
- JAVA/JSP项目信息,有兴趣请联系
- oracle 9i 中用sql 语句创建多个用户(用户名有规律)小弟初学乍练,还望gs详细指点
- 能不能实现类似ROWNUM 的功能?
- 菜鸟的问题:修改数据,存储过程怎么写,请高手指点
- msvc++6开发CS架构 : 服务器端接收请求报文后,如何最大效率地进行oracle数据库中操作,例如insert,select,update等? oci?
- 怎样选择字段中只有数字、逗号和分号的记录,字段类型为clob
- Oracle 中的AS语句是起什么作用的啊?
- 在c#中调用Oracle包时出错,原因大概时由于包体过程中有链接其它数据库操作,不知如何解决?
- Oracle数据库同步
- JDBC中PreparedStatement的参数问题
nvl(sum(decode(type,1,amount)),0) type1_amount,
nvl(sum(decode(type,2,amount)),0) type2_amount,
nvl(sum(decode(type,3,amount)),0) type3_amount,
nvl(sum(decode(type,4,amount)),0) type4_amount
from tt
group by cardasn
卡号 金额 缴费类型
cardasn amount type
001 10 1
001 40 1
001 50 2
001 60 3
002 10 2 ----
002 60 2 ---三行红色?
002 90 4
001 50 50 60 0
002 0 70 60 90
cardasn type amount
1 1 1001 1 2009-08-01 ssssss 100000 100101
2 2 1001 1 2009-08-02 aaaaa 20000 100101
3 3 1001 2 2009-08-03 bbbbb 45000 100102
4 4 1001 3 2009-08-04 ccccc 580100 100103
5 5 1002 1 2009-08-05 ddddd 49855 100201
6 6 1002 3 2009-08-06 eeeee 98200 100203
7 7 1003 2 2009-08-07 ffffff 100 100302
8 8 1003 2 2009-08-08 ggggg 2500 100302
9 9 1003 3 2009-08-09 hhhhh 8510 100303
10 10 1003 5 2009-08-10 iiiii 6200 100305
11 11 1003 6 2009-08-11 jjjjj 8520 100306
12 12 1003 11 2009-08-12 kkkkk 6520 100311结果:
1 1002 49855 0 98200 0 0 0
2 1001 120000 45000 580100 0 0 0
3 1003 0 2600 8510 6200 8520 6520