"把符合a1>10的记录中的a2字段的值累加起来"这样整个表只能得到一个值
“添到表b的b字段里”什么意思啊?是更改吧?我想你的a表是这样的吧
QL> select * from aa; A1 A2 CODE
--------- ---------- ----------
1 2 1
15 3 1
20 4 1
20 1 2
要以CODE分组统计A2字段的sum值吧?然后再更新B表的B字段
但是B表的CODE必须是唯一的
SQL> select * from bb;(这里B表的A2就是你说的B的b字段) A1 A2 CODE
---------- ---------- ----------
0 0 1
0 0 2UPDATE BB B SET B.A2=(SELECT SUM(A.A2) FROM AA A WHERE A.CODE=B.CODE AND A.A1>10 GROUP BY A.CODE);
COMMIT;SQL> SELECT * FROM BB; A1 A2 CODE
---------- ---------- ----------
0 7 1
0 1 2
是这样吗?
“添到表b的b字段里”什么意思啊?是更改吧?我想你的a表是这样的吧
QL> select * from aa; A1 A2 CODE
--------- ---------- ----------
1 2 1
15 3 1
20 4 1
20 1 2
要以CODE分组统计A2字段的sum值吧?然后再更新B表的B字段
但是B表的CODE必须是唯一的
SQL> select * from bb;(这里B表的A2就是你说的B的b字段) A1 A2 CODE
---------- ---------- ----------
0 0 1
0 0 2UPDATE BB B SET B.A2=(SELECT SUM(A.A2) FROM AA A WHERE A.CODE=B.CODE AND A.A1>10 GROUP BY A.CODE);
COMMIT;SQL> SELECT * FROM BB; A1 A2 CODE
---------- ---------- ----------
0 7 1
0 1 2
是这样吗?
解决方案 »
- 数据库DBA高手快来啊,linux shell编程 从文本文件读取行和列内容 插入数据库,要怎么读取出来
- 如何關聯刪除表記錄,高手請進
- 学数据库什么教材好
- 根据表中重复的某列值将另一列的多行数据合并显示的sql怎么写
- 如何将日期段内的日期全部显示出来?
- 系列号不能做为缺省值吗?
- 读操作不会阻塞写操作
- ORACLE9中存储过程在ORACLE8中报错误 ORA-06505
- 上海一氏软件科技有限公司,急切诚聘网络游戏服务器段设计程序员
- 【求助】orcal怎么通过列名找到含有该列的表名?
- 关于触发器的问题(在一个表中检索符合要求的数据累加起来放到另外一个表中)(急,急,急)
- 怎样知道oracle数据库所能接受的最大连接数session?
create or replace procedure pro_sys_db_new
IS TOTAL_cnyh_num,TOTAL_cnyh_sum
BEGIN SELECT COUNT(*)
INTO TOTAL_cnyh_num
FROM AA
WHERE A2>'0' AND
A.CODE =B.CODE, SELECT SUM(A2)
INTO TOTAL_cnyh_sum
FROM AA
WHERE A2>'0' AND
A.CODE =B.CODE,
UPDATE SYSTEM_DB_NEW
SET cnyh_num=:TOTAL_cnyh_num
where code = '11';
END;
TOTAL_cnyh_num NUMBER;
UPDATE BB B SET B.A2=(SELECT SUM(A.A2) FROM AA A WHERE A.CODE=B.CODE AND A.A1>10 GROUP BY A.CODE);
谢谢回答!
想让你看看这么写对不对
你现在看我这么写对吗?
create or replace procedure pro_sys_db_new
IS TOTAL_cnyh_num number; //两个变量
TOTAL_cnyh_sum number;
BEGIN SELECT COUNT(*)
INTO TOTAL_cnyh_num
FROM AA
WHERE A2>'0' AND
AA.CODE =BB.CODE, //将统计结果给变量 SELECT SUM(A2)
INTO TOTAL_cnyh_sum
FROM AA
WHERE A2>'0' AND
AA.CODE =BB.CODE, //将统计结果给变量
UPDATE BB
SET A2=:TOTAL_cnyh_num, A1=:TOTAL_cnyh_sum,
where code = '11'; //更新BB表的A1和A2字段,也是过程的目的
END;
http://community.csdn.net/Expert/topic/3505/3505383.xml?temp=.5456507好像一会儿触发器,一会儿过程,按照我的理解,如果是对的,一句SQL语句就OK了
你的过程中的SQL语句是要以分号结束的,不是逗号,刚才已经和你说了^_^