gpt4 book ai didi

php - Mysql用数组设置值

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

如果数组中的 ID 如 $ids=['key1'=>'value1','key2'=>'value'] 是否有可能更新 MySql 表。 $ids 键是 MySql 表中的 ID!

我可以遍历 $ids 并做类似

的事情
foreach($ids as $key=>$value)
do_query(UPDATE table SET column=$value WHERE $id=$key);

但是想要在一次查询中完成所有更新,而不是执行 count($ids) 查询!

最佳答案

试试这个:

$idsIn='';
$ids=['key1'=>'value1','key2'=>'value'];
$case='';
foreach($ids as $key=>$value){
$idsIn.=($idsIn=='')?"'$key'":','."'$key'";
$case.=" WHEN '$key' THEN '$value'";
}

$sql = "UPDATE table set column= (CASE id $case END) WHERE id in($idsIn)";

返回:

UPDATE table set column= (CASE id  WHEN 'key1' THEN 'value1' WHEN 'key2' THEN 'value' END) WHERE id in('key1','key2')

关于php - Mysql用数组设置值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42096191/

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