Olá agpcardoso, pelo que eu entendi, a tabela 1 tem poucos registros enquanto a tabela 3 tem muitos, correto?
UPDATE TAB3 SET TAB3.DSC = (SELECT DSC FROM TAB1 WHERE TAB1.ID = TAB3.ID) WHERE TAB3.ID in (SELET ID FROM TAB1); ou uma solução mais trabalhosa mas acredito que seja mais rápida (?) begin for c1 in (SELECT ID, DSC FROM TAB1) loop update TAB3 set DSC = c1.DSC where ID = c1.ID; end loop; end; Boa Sorte, Josir. --- Estou alterando uma rotina de carga onde preciso fazer um update em 1 campo da tabela 3 de acordo c/ os dados q tiverem na tabela 1. Na rotina ORIGINAL para cada registro da tabela 3 está sendo feito um select na tabela 1 e atualizando a tabela 3 de acordo com o q vier na tabela 1, porém devido a quantidade grande de registros existentes nas 2 tabelas, essa rotina está MUITO LENTA. NO SQL SERVER eu resolveria esse problema utilizando a query descrita abaixo, porem no Oracle essa query não funciona. Alguém saberia me dizer como posso fazer no oracle a mesma coisa q a query abaixo faz no sql server??? Obrigado. QUERY ############################## UPDATE TAB3 SET TAB3.DSC = TAB1.DSC FROM TAB1, TAB3 WHERE TAB1.ID = TAB3.ID [As partes desta mensagem que não continham texto foram removidas]