我有一个PHP应用程序,需要更新多个产品行。此更新应将给定的数字添加到名为estoque的列的当前值中。
示例:产品A增加3个单位,产品B增加6个单位,等等。
有没有办法只使用一个查询来实现这一点,像这样?

insert into venda_produto (`cod`,`estoque`)
    values (49477,`estoque`+3), (98798,`estoque`+6)
    on duplicate key update `cod`=COALESCE( VALUES(`cod`), `cod`),`estoque`=COALESCE( VALUES(`estoque`), `estoque`)

`

最佳答案

这应该符合您的要求:

INSERT INTO vendo_produto (cod, estoque)
VALUES (49477, 3), (98798, 6)
ON DUPLICATE KEY UPDATE estoque = estoque + VALUES(estoque);

关于php - 如何在MySQL的int列中更新多行添加值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41610245/

10-12 22:58