Uma das formas de se fazer é com uma procedure do tipo: CREATE OR REPLACE PROCEDURE fast_way IS TYPE PartNum IS TABLE OF parent.part_num%TYPE INDEX BY BINARY_INTEGER; x PartNum; TYPE PartName IS TABLE OF parent.part_name%TYPE INDEX BY BINARY_INTEGER; y PartName; BEGIN SELECT part_num, part_name BULK COLLECT INTO x, y FROM parent;
FOR i IN x.FIRST .. x.LAST LOOP x(i) := x(i) * 10; END LOOP; FORALL i IN x.FIRST .. x.LAST INSERT INTO child (part_num, part_name) VALUES (x(i), y(i)); COMMIT; END fast_way; Retirado de http://www.psoug.org/reference/bulk_collect.html Lembrando que com o FORALL você não pode fazer rollback depois, mas é bem mais eficiente... -----Mensagem original----- De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Fernandes Rocha Enviada em: quinta-feira, 11 de agosto de 2005 10:47 Para: oracle_br@yahoogrupos.com.br Assunto: [oracle_br] Atualizando linhas de uma tabela com base em outra tabela Muito bom dia... Gostaria de saber como faco para atualizar linhas de uma tabela com base em outra tabela: Por exemplo: Preciso fazer um update no campo MAE_NUMDOC da tabela MAE010, com os dados do campo A1_CGC da tabela SA1010 ... O que estiver no primeiro registro no campo A1_CGC, tem que ir para o primeiro registro no campo MAE_NUMDOC, assim sucessivamente ate' concluir os 66.350 registros Desde ja agradeco. 1 abracao. Fernandes [EMAIL PROTECTED] Organizacoes Fernandes de Souza Ltda. Drogaria Moderna. "Somente depois de esgotados todos os recursos naturais, o homem sabera' que o dinheiro nao se come". * Autor desconhecido. ______________________________________________________________________ Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ Falar com os Moderadores:([EMAIL PROTECTED]) Dorian Anderson Soutto - Fernanda Damous - Alisson Aguiar ______________________________________________________________________ Links do Yahoo! Grupos ______________________________________________________________________ Histórico: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ Falar com os Moderadores:([EMAIL PROTECTED]) Dorian Anderson Soutto - Fernanda Damous - Alisson Aguiar ______________________________________________________________________ Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html