又不是插入或修改触发的事件,建议用过程做,或者SQL做.
用过程很容易的,用SQL的话不是很容易来显示SUM(A),SUM(B)等,除非就只有这么两种!
用过程做如下:
DECLARE
CURSOR CUR_TEST AS SELECT FIELD1,SUM(FIELD2) SUM1 FROM TABLENAME GROUP BY FIELD1;
BEGIN
FOR CUR_EMP IN CUR_TEST
LOOP
INSERT INTO TABLENAME VALUES('SUM('||CUR_EMP.FIELD1||')',CUR_EMP.SUM1);
END LOOP;
END;
用过程很容易的,用SQL的话不是很容易来显示SUM(A),SUM(B)等,除非就只有这么两种!
用过程做如下:
DECLARE
CURSOR CUR_TEST AS SELECT FIELD1,SUM(FIELD2) SUM1 FROM TABLENAME GROUP BY FIELD1;
BEGIN
FOR CUR_EMP IN CUR_TEST
LOOP
INSERT INTO TABLENAME VALUES('SUM('||CUR_EMP.FIELD1||')',CUR_EMP.SUM1);
END LOOP;
END;
解决方案 »
- 请教这个sql怎么写
- 求oracle存储过程中系统时间(毫秒)
- 求一个语句,查询oracle中所用用户表的名字和该表中的记录总数
- oracle 与sql server 透明网关 查询image 字段时报错
- 大家帮忙看下~~触发器~~
- 关于ODI 安装时 ODI口令不对的问题
- 急急!!!两个有关oracle方面的小问题?????
- 请问在PL/SQL存储过程中,我定义了一个数组但不知怎么访问这个数组,用操作符[]竟然说语法错误,谁能解决。
- 急问:INSERT中的类型问题
- 知道Oracle数据库的超级管理的用户名密码后,怎么修改操作系统的超管的密码?
- 【Oracle常见问题与解答】
- 求教闪回用法!!!
2 union all
3 select 'sum('||col1||')' col1, sum(col2) col2
4 from test2
5 group by col1;COL1 COL2
--------------- ----------
a 2
a 12
b 20
b 3434
sum(a) 14
sum(b) 3454
select col1,sum(col2) from table group rollup(col1)
union all
select 'sum('||col1||')' col1,sum(col2) from test_2 group by col1
---------- ----------
1 1
1 2
1 3
2 4
2 5select ''||no no,val from test_2
union all
select 'sum('||no||')' no,sum(val) from test_2 group by no;NO VAL
------------------ --------
1 1
1 2
1 3
2 4
2 5
sum(1) 6
sum(2) 97 rows selected