gpt4 book ai didi

php - MySQL:一次查询多行更新

转载 作者:行者123 更新时间:2023-11-29 02:34:20 25 4
gpt4 key购买 nike

我有一个包含 3,000 多行的数组,格式如下

$COUNTS = array(
1=>5,
2=>22,
3=>120,
4=>0,
....
);

其中键表示一个 ID,值是计算出的 COUNT...

我需要用这些新值更新我表中的所有行(使用 php)...

所以现在我正在一一更新(简化)喜欢

foreach($COUNTS as $id=>$count){
mysql_query("UPDATE categories SET count=$count WHERE id=$id");
}

我需要进行 3,000 多次查询才能进行简单的更新....

这可以通过一次查询或任何其他资源消耗较少的方式完成吗?也许生成一个 csv 文件并即时更新什么?

最佳答案

你可以尝试类似的东西

UPDATE categories c
INNER JOIN
(
SELECT 1 as id, 23 as `cnt`
UNION
SELECT 2 as id, 25 as `cnt`
-- UNION etc
)a
ON c.id = a.id
SET c.`count` = a.cnt

关于php - MySQL:一次查询多行更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7651416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com