Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Mysql如何在1中组合2个更新查询_Php_Mysql - Fatal编程技术网

Php Mysql如何在1中组合2个更新查询

Php Mysql如何在1中组合2个更新查询,php,mysql,Php,Mysql,当IDs需要是动态的时,如何组合这两个查询? 它们都来自表项 编辑,分数(可以是+10或-10)上升票(可以是+1或-1)和下降票(可以是+1或-1) 所以它们也是动态的,抱歉误解了试试这个,$idlist是一个逗号分隔的列表 UPDATE `items` SET `score`=[value-1],`up_votes`=[value-2],`down_votes`=[value-3] WHERE `ID` = $id UPDATE `items` SET `score`=[value-1],`

当IDs需要是动态的时,如何组合这两个查询? 它们都来自表

编辑,分数(可以是+10或-10)上升票(可以是+1或-1)和下降票(可以是+1或-1)


所以它们也是动态的,抱歉误解了

试试这个,$idlist是一个逗号分隔的列表

UPDATE `items` SET `score`=[value-1],`up_votes`=[value-2],`down_votes`=[value-3] WHERE `ID` = $id
UPDATE `items` SET `score`=[value-1],`up_votes`=[value-2],`down_votes`=[value-3] WHERE `ID` = $id

不同id通过某些条件相关,您可以执行以下操作:

UPDATE `items` SET `score`=[value-1],`up_votes`=[value-2],`down_votes`=[value-3] WHERE `ID` in ($idlist)

如果值相同,您可以在条件中选择
。是吗?假设两个查询都相同,
set score=value-2,down_vots=value-6,up_vots=value-4
将是“组合”,如果不同的ID之间有关系,那么您可以在IN子句中使用OR,如果不必逐个编辑,则分数(可以是+10或-10)up vots(可以是+1或-1)和down vots(可以是+1或-1)所以它们也是动态的,抱歉误解了
UPDATE `items` SET `score`=[value-1],`up_votes`=[value-2],`down_votes`=[value-3] 
WHERE `ID` IN(SELECT ID FROM `items` WHERE SomeCondition)