下面这些数据只是我举例说明, 实际是从数据库中读出来的
select t.product_type,t.product_sort,t.sale_date,t.product_qty from sales t order by t.product_type,t.product_sort,t.sale_date电脑 戴尔 2012-01 210 10
电脑 联想 2012-02 180 7
电脑 联想 2012-02 190 9
手机 诺基亚 2012-01 100 6
手机 诺基亚 2012-02 110 12
手机 三星 2012-01 130 17现在要统计成这样的形式大类 小类 销售数(2012-01) 维修数(2012-01) 销售数(2012-02) 维修数(2012-02) 总销售数 总维修数
电脑 戴尔 210 10 210 10
电脑 联想 370 16 370 16
电脑 合计 210 10 370 16 480 26
手机 诺基亚 100 6 110 12 210 18
手机 三星 130 17 130 17
手机 合计 230 23 110 12 340 35
总计 440 33 480 28 920 61
select t.product_type,t.product_sort,t.sale_date,t.product_qty from sales t order by t.product_type,t.product_sort,t.sale_date电脑 戴尔 2012-01 210 10
电脑 联想 2012-02 180 7
电脑 联想 2012-02 190 9
手机 诺基亚 2012-01 100 6
手机 诺基亚 2012-02 110 12
手机 三星 2012-01 130 17现在要统计成这样的形式大类 小类 销售数(2012-01) 维修数(2012-01) 销售数(2012-02) 维修数(2012-02) 总销售数 总维修数
电脑 戴尔 210 10 210 10
电脑 联想 370 16 370 16
电脑 合计 210 10 370 16 480 26
手机 诺基亚 100 6 110 12 210 18
手机 三星 130 17 130 17
手机 合计 230 23 110 12 340 35
总计 440 33 480 28 920 61
解决方案 »
- [pipi]如何查询ORACLE数据库中有哪些定时作业?
- plsql 8.0如何在windows server 2008下连64bit 的Oracle 11g client
- oracle改变分区规则,如何处理?
- linux as5下执行SH报错,syntax error near unexpected token '(',请大哥大姐帮帮忙!
- 在linux如何用C调用oracle以数组作为参数的存储过程,谢谢!
- 急求助???
- 使用oracle的rownum分页,如何去掉多余的rownum列
- 一个简单问题
- 关于Oracle安装的问题!请各位老大指教。
- 如何创建oracle9.2.0.1中的LDAP的instance以及如何启动LDAP目录服务器??
- 求一句SQL语句应该怎么写
- oracle中非自然月的问题
sum(decode(t.sale_date,'2012-01',t.product_qty,0))m1,
sum(decode(t.sale_date,'2012-02',t.product_qty,0))m2,
sum(product_qty) m3
from sales t
group by grouping sets((t.product_type,t.product_sort),(t.product_type),()) 哪个是销售数哪个是维修数都不知道。
create table sales(product_type varchar2(10),product_sort varchar2(10),sale_date varchar2(7),product_qty number(10),product_wx number(10));insert into sales values ('电脑','戴尔','2012-01',210,10);
insert into sales values ('电脑','联想','2012-02',180,7);
insert into sales values ('电脑','联想','2012-02',190,9);
insert into sales values ('手机','诺基亚','2012-01',100,6);
insert into sales values ('手机','诺基亚','2012-02',110,12);
insert into sales values ('手机','三星','2012-01',130,17);
select product_type 大类,
product_sort 小类,
sum(decode(sale_date,'2012-01',product_qty,0)) x1,
sum(decode(sale_date,'2012-01',product_wx,0)) w1,
sum(decode(sale_date,'2012-02',product_qty,0)) x2,
sum(decode(sale_date,'2012-02',product_wx,0)) w2,
sum(product_qty) h1,
sum(product_wx) h2
from sales
group by rollup (product_type,product_sort) 大类 小类 x1 w1 x2 w2 h1 h2
----------------------------------------------------------------------
1 电脑 戴尔 210 10 0 0 210 10
2 电脑 联想 0 0 370 16 370 16
3 电脑 210 10 370 16 580 26
4 手机 三星 130 17 0 0 130 17
5 手机 诺基亚 100 6 110 12 210 18
6 手机 230 23 110 12 340 35
7 440 33 480 28 920 61