我遇到的问题是具有7种类型的值的策略浏览器游戏。问题如下:


我在$_POST中得到了7个不同的值,从索引unit_1到包括索引unit_7。这7个值的INTEGERS在0到20之间,并且不是静态的。他们可以在页面的每次调用中使用。它们代表发送的单位数。
我在不遵循相同架构的表中得到了7行:"nameUnit" = "Soldier" && nbUnit = "0""nameUnit" = "Mage" && nbUnit = "5"等。
我需要对1个请求中的单位数进行更新,但是我不知道该怎么做。


我想做的例子:

UPDATE x SET nbUnit = $_POST['u1'] WHERE nameUnit = "Soldier", nbUnit = $_POST['u2'] WHERE nameUnit = "Mage" [...]


可以这样做吗,并且可以在单个查询中完成?

最佳答案

在PL SQL中,您可以执行以下操作:

UPDATE x SET nbUnit = case when nameUnit = "Soldier" then $_POST['u1']
when nameUnit = "Mage" then $_POST['u2'] else nbUnit end;

关于php - PHP/MySQL:使用多个WHERE更新多个值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50293267/

10-10 09:09