我有一查询结果:
name num
G1 10
G13 2
G2 3
L1 5
L2 4
M2 1我想对列的不同种类求和,最后显示形式G的单独求和,L M的一起求和name num
G1 10
G13 2
G2 3
Sum1 15
L1 5
L2 4
M2 1
Sum2 5这种sql 怎样搞
rollup可以么
name num
G1 10
G13 2
G2 3
L1 5
L2 4
M2 1我想对列的不同种类求和,最后显示形式G的单独求和,L M的一起求和name num
G1 10
G13 2
G2 3
Sum1 15
L1 5
L2 4
M2 1
Sum2 5这种sql 怎样搞
rollup可以么
解决方案 »
- 请问where语句的顺序是佛会影响效率
- 回车符问题
- Oracle更新时,number类型与varchar转换时出现问题
- REDHAT9+ORACLE9 proc预编译的时候。PC源程序回车换行符如果是0D0A就不能编译,不想转成0A,有什么方法可以直接编译(不好实现)
- UTL_FILE.FOPEN时报错。请问如何处理?
- 查询所有未修1号课程的学生姓名
- oracle数据库的错误处理问题
- asp连接oracle9 用单独安装oo4o嘛?在线等。。。。。
- 增加策略后如何取得SQL语句,或where子句???
- 几个小问题?
- update记录的一个字段,与更新该记录的全部字段,性能上会有区别吗?
- 触发器求教,请先生教我!
(
NAME VARCHAR2(20),
NUM NUMBER(4)
);
INSERT INTO T92 VALUES('G1', 10);
INSERT INTO T92 VALUES('G13', 2);
INSERT INTO T92 VALUES('G2', 3);
INSERT INTO T92 VALUES('L1', 5);
INSERT INTO T92 VALUES('L2', 4);
INSERT INTO T92 VALUES('M2', 1);
测试结果:
loc name num
A G1 10
A G13 2
A G2 3
A L1 5
A L2 4
A M2 1
B G1 15
B G13 10
B G2 13
B L1 15
B L2 14
B M2 11求和结果
loc name num
A G1 10
A G13 2
A G2 3
sum 15
A L1 5
A L2 4
A M2 1
sum 10
sum 25
B G1 15
B G13 10
B G2 13
sum 38
B L1 15
B L2 14
B M2 11
sum 40
sum 78sum 103就是我多出了一列LOC,在原来求和方法的基础上最后一行要求所有LOC的列的和我改下了sql如下
group by loc,rollup(decode(substr(name,1,1),'L','M','T','M',substr(name,1,1)),name)改写后只是实现了原来的功能,没有by loc来求和