Update de um campo usando outra Tabela

25/10/2011

0

Boa tarde, sou novo por aqui e meio que iniciante em SQL.

Me ajudem, preciso atualizar um campo de uma tabela usando campo de outra.

update ENTRADAS set NOTA_FISCAL = CONTAS_PAGAR.NOTA

Tenho os filtros where e já sei usalos, mas creio que estou montando errado linha update

Isso é para resolver uma falha antiga no nosso ERP, onde foi apagado na tabela entradas o número da Nota mas ainda temos esse número na tabela CONTAS_PAGAR.

Obrigado
Mizael Lehmann

Mizael Lehmann

Responder

Posts

25/10/2011

Joel Rodrigues

Um exemplo.
Eu tenho duas tabelas: LANCAMENTO_CAIXA e CONTAS_PAGAR. Na tabela de lançamentos, eu guardo o valor e o código da conta que foi paga.
Houve uma falha no meu sistema onde ocorreu o seguinte: o valor da conta não estava sendo gravado, só o número. Preciso atualizar a tabela de lançamentos para que todos os registros relacionados com contas a pagar passem a ter o valor correto (o valor da conta).
Solução:
UPDATE LANCAMENTO_CAIXA SET VALOR_CONTA = (SELECT VALOR FROM CONTAS_PAGAR C WHERE C.CODIGO = LANCAMENTO_CAIXA.CODIGO_CONTA)

Espero ter ajudado.
Qualquer coisa, dê mais detalhes sobre a estrutura de suas tabelas e qual o relacionamento entre elas.
Responder

15/12/2011

Bruno Manguinho

Você pode fazer um UPDATE FROM

update ENTRADAS set NOTA_FISCAL = CONTAS_PAGAR.NOTA

UPDATE ENTRADAS SET
NOTA_FISCAL = CONTAS_PAGAR.NOTA
FROM ENTRADAS
INNER JOIN CONTAS_PAGAR ON CONTAS_PAGAR.Codigo = ENTRADAS.Codigo_CONTAS_PAGAR

Estou levando em consideração aqui que ENTRADAS tem uma chave estrangeira de CONTAS_PAGAR, ou vice-versa (a depender da estrutura que vc montou), e fiz um Join com essa relação.

Claro que os nomes das chaves eu inventei e vc tem que colocar do jeito que esta no sistema.
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