Como executar este update?

17/11/2004

0

Galera,

Estou precisando atualizar uma tabela, com valores de outra tabela, mas não consegui fazer esta façanha. Como no exemplo:
update tabela1 set tabela1.codigo = tabela2.codigo where tabela1.nome = tabela2.nome

Como eu faço esta ´join´ nas tabelas?

Desde já, agradeço a ajuda de todos!


Rodolpho123

Rodolpho123

Responder

Posts

17/11/2004

Emerson Nascimento

update tabela1 set tabela1.codigo = (select max(tabela2.codigo) where tabela2.nome = tabela1.nome)


o max() é só pra garantir que seja retornado apenas 1 registro.


Responder

18/11/2004

Rodolpho123

update tabela1 set tabela1.codigo = (select max(tabela2.codigo) where tabela2.nome = tabela1.nome) o max() é só pra garantir que seja retornado apenas 1 registro.


Muito obrigado emerson, mas infelizmente a dica que vc me deu, não funcionou. Ela atualizou todos os registros de tabela1.codigo com o mesmo valor. Vou continuar tentando...Um abraço!


Responder

18/11/2004

Emerson Nascimento

a instrução estava errada. creio que vc deva ter feito corretamente, senão daria erro, mas de qualquer forma, a instrução correta seria:

update tabela1 set tabela1.codigo = (select max(tabela2.codigo) [b:f4340c6ecb]from tabela2[/b:f4340c6ecb] where tabela2.nome = tabela1.nome)


Responder

23/11/2004

Rodolpho123

Novamente, muito obrigado emerson, mas eu só consegui fazer minha ´update´ através de [b:64451ba5a2]stored procedures[/b:64451ba5a2], no comando [b:64451ba5a2]for select do[/b:64451ba5a2]...


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar