[RESOLVIDO] Como receber valores de outra tabela e somar na actual?

Bom dia, a minha dúvida é seguinte:
Eu tenho duas tabelas:
TABELA 1
PRODUTOS – QUANTIDADE
Agua-- 15
Sumo-- 25

TABELA 2
PRODUTOS – QUANTIDADE
Agua-- 15
Sumo-- 25

Eu gostaria de receber a quantidade da TABELA 2 na TABELA 1 e somar com a quantidade já existente, isto é:

TABELA 1
PRODUTOS – QUANTIDADE
Agua-- 30
Sumo-- 50
Agradeço a quem puder ajudar.

Pesquise sobre update from para mysql, algo nesse sentido (faz tempo que não mexo ok? posso ter errado algo)…

UPDATE tabela1 AS tb1, tabela2 AS tb2 
SET tb1.quantidade = tb1.quantidade + tb2.quantidade
WHERE tb1.produtos = tb2.produtos;

Boa sorte!

1 curtida

Muito obrigado, assim que chegar a casa ponho em prática

Mais uma pequena dúvida, imagine que eu queira primeiro somar os itens da TABELA 2 que tenham mesmo ID ou NOME primeiro antes de actualizar pra TABELA 1?
Exemplo:
TABELA 2
PRODUTOS – QUANTIDADE
Agua-- 15
Sumo-- 25
Agua-- 14
Agua-- 50
Sumo-- 8
etc…

Bom, ai complica um pouco, não sei se isso vai te atender:

...
SET tb1.quantidade = tb1.quantidade + SUM(tb2.quantidade)
...

Porque talvez envolva group by, ai sua outra alternativa é fazer uma subquery:

UPDATE tabela1 AS tb1, 
(SELECT produtos, SUM(quantidade) AS quantidade FROM tabela2 GROUP BY produtos) AS tb2
 ....

Vai pesquisando, jeito tem… boa sorte!