DECLARE ADATAS B%ROWTYPE; CURSOR ATABLEDATAS --定义游标 IS SELECT AC1,AC2 FROM ATABLE; BEGIN OPEN ATBLEDATAS; --打开游标 LOOP FETCH ATBLEDATAS INTO ADATAS;--读取游标值 IF ATBLEDATAS%FOUND THEN --如果读到数据 INSERT INTO BTABLE(BC1,BC2) VALUES(ADATAS.AC1,ADATAS.AC2);--写入B表 ELSE DBMS_OUTPUT.PUT_LINE('已复制出共'||ADATAS%ROWCOUNT||'条记录。'); EXIT; END IF; END LOOP; CLOSE ATBLEDATAS;--关闭游标 END;
Insert into B (col1,col2) select col1,sum(col2) from A group by col1
insert into B(col1,col2)
select col_1,sum(col_2) from A group by col_1
AC1 B.C1%TYPE;
AC2 B.C2%TYPE;
CURSOR ATABLEDATAS
ISBEGIN
ADATAS B%ROWTYPE;
CURSOR ATABLEDATAS --定义游标
IS
SELECT AC1,AC2 FROM ATABLE;
BEGIN
OPEN ATBLEDATAS; --打开游标
LOOP
FETCH ATBLEDATAS INTO ADATAS;--读取游标值
IF ATBLEDATAS%FOUND THEN --如果读到数据
INSERT INTO BTABLE(BC1,BC2) VALUES(ADATAS.AC1,ADATAS.AC2);--写入B表
ELSE
DBMS_OUTPUT.PUT_LINE('已复制出共'||ADATAS%ROWCOUNT||'条记录。');
EXIT;
END IF;
END LOOP;
CLOSE ATBLEDATAS;--关闭游标
END;
(col1,col2)
select col1,sum(col2)
from A
group by col1