用pl/sql developer开发oracle存储过程 在B表中查找特定字段的特定条件的数据insert到A表中,怎么写
3个回答
展开全部
如果只是SQL命令:insert into a select b.b1,b.b2,b.b3 from b where b.b4='<条件>' 即可
楼主问的是存储过程,例如:
CREATE OR REPLACE PROCEDURE B2A IS
CURSOR C_TABLEB IS
SELECT B2,B3 FROM B WHERE <特定条件>;
R_TABLEB C_TABLEB %ROWTYPE;
BEGIN
FOR R_TABLEB IN C_TABLEB LOOP
INSERT INTO A(A1,A2) VALUES (R_TABLEB.B2,R_TABLEB.B3);
END LOOP;
COMMIT;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
END B2A;
楼主问的是存储过程,例如:
CREATE OR REPLACE PROCEDURE B2A IS
CURSOR C_TABLEB IS
SELECT B2,B3 FROM B WHERE <特定条件>;
R_TABLEB C_TABLEB %ROWTYPE;
BEGIN
FOR R_TABLEB IN C_TABLEB LOOP
INSERT INTO A(A1,A2) VALUES (R_TABLEB.B2,R_TABLEB.B3);
END LOOP;
COMMIT;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
END B2A;
展开全部
oracle中可以用oracle独有语法merge来实现,语法结构为:
MERGE INTO A
USING B
ON (A.a1 = b.b1)
WHEN MATCHED THEN
INSERT (a.a2)
VALUES (b.b2);
MERGE INTO A
USING B
ON (A.a1 = b.b1)
WHEN MATCHED THEN
INSERT (a.a2)
VALUES (b.b2);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
insert into a select b.b1,b.b2,b.b3 from b where b.b4='?'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询