marloncos Postado Maio 25, 2012 Denunciar Share Postado Maio 25, 2012 Pessoal,Estou a um passo do sucesso!!! rsrsrsPreciso fazer um update em uma tabela com dados provenientes de outra tabela.TAB1NUMERO || VALOR1 || VALOR2 || DATA123 || 000 || 000 || 01/01/01213 || 000 || 000 || 01/01/01TAB2NUMERO || VALOR1 || VALOR2 || DATA123 || 999 || 899 || 23/04/12213 || 989 || 900 || 01/05/12O máximo que consegui foi isso:select 'update TAB1 set VALOR1 = ' || VALOR1 || ', VALOR2 = ' || VALOR2 || ', DATA = ' || DATA || ' where NUMERO = ' || NUMERO || ';' from TAB2;Mas ta um saco ficar exportando e rodando dois comandos para fazer essa operação.Alguém sabe alguma forma mais inteligente de fazer isso?Vlw!!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Maio 28, 2012 Denunciar Share Postado Maio 28, 2012 Bom dia marloncos, Tem com você fazer o update em bloco sim. Basta utilizar join (igual faz no select). Ex.:UPDATE TAB1 SET valor1=t2.valor1, valor1=t2.valor1, DATA=t2.DATA FROM TAB1 t1, TAB2 t2 WHERE t1.numero=t2.numero Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marloncos Postado Maio 29, 2012 Autor Denunciar Share Postado Maio 29, 2012 Ola fulvio,obrigado pela atenção, mas não deu certo :mellow: estou recebendo a mensagem do oracle:Erro na Linha de Comando:1 Coluna:106Relatório de Erro:Erro de SQL: ORA-00933: comando SQL não encerrado adequadamente00933. 00000 - "SQL command not properly ended"*Cause: *Action:alguma sugestão?Vlw!!!!Bom dia marloncos, Tem com você fazer o update em bloco sim. Basta utilizar join (igual faz no select). Ex.:UPDATE TAB1 SET valor1=t2.valor1, valor1=t2.valor1, DATA=t2.DATA FROM TAB1 t1, TAB2 t2 WHERE t1.numero=t2.numero Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fulvio Postado Maio 29, 2012 Denunciar Share Postado Maio 29, 2012 Opa... é Oracle? Vou mover este tópico para o outro Forum... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marloncos Postado Maio 29, 2012 Autor Denunciar Share Postado Maio 29, 2012 Ola Fulvio,é sim cara, desculpe, não percebi que estava em forum errado.alguém saberia me dizer como fazer esse update no Oracle?Vlw pessoal!!!!Opa... é Oracle? Vou mover este tópico para o outro Forum... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Maio 30, 2012 Denunciar Share Postado Maio 30, 2012 exemplos:http://psoug.org/reference/update.htmlhttp://docs.oracle.com/cd/B19306_01/appdev...e_statement.htmabraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
marloncos
Pessoal,
Estou a um passo do sucesso!!! rsrsrs
Preciso fazer um update em uma tabela com dados provenientes de outra tabela.
TAB1
NUMERO || VALOR1 || VALOR2 || DATA
123 || 000 || 000 || 01/01/01
213 || 000 || 000 || 01/01/01
TAB2
NUMERO || VALOR1 || VALOR2 || DATA
123 || 999 || 899 || 23/04/12
213 || 989 || 900 || 01/05/12
O máximo que consegui foi isso:
select 'update TAB1 set VALOR1 = ' || VALOR1 || ', VALOR2 = ' || VALOR2 || ', DATA = ' || DATA || ' where NUMERO = ' || NUMERO || ';' from TAB2;
Mas ta um saco ficar exportando e rodando dois comandos para fazer essa operação.
Alguém sabe alguma forma mais inteligente de fazer isso?
Vlw!!!!
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.