MySQL - Fazer update de uma tabela com soma de outra tabela

16/03/2017

0

Como atualizar os valores de uma tabela, usando valores pegos em outra tabela:

UPDATE produto -- atualizar a tabela produto
SET produto.quant = SUM(entrada.quant) -- produto.quant será igual a soma da coluna quant da tabela entrada
WHERE produto.id = entrada.idproduto -- onde produto.id = entrada.idproduto

Tabela produto:

id int
descricao string
tipo string
quant int

Tabela entrada

id int
idProduto int
data date
quant int
Italo Pereira

Italo Pereira

Responder

Post mais votado

16/03/2017

Você pode fazer isso de duas formas, a primeira seria usando um subselect no set:
Update tabela1 set valor = (Select valor2 from tabela2 where <suaCondicao>)
Where <Condicao para tabela 1>

A segunda é com uso de joins

UPDATE Tabela1
JOIN Tabela2 ON Tabela1.Id= Tabela2.IdTabela1
SET Tabela1.Valor = Tabela2.NovoValor
Where <Condição>


espero ter ajudado.
;)

Gutierry Pereira

Gutierry Pereira
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