MySQL - Fazer update de uma tabela com soma de outra tabela
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
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
Curtidas 0
Melhor post
Gutierry Pereira
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.
;)
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.
;)
GOSTEI 1