我有数据的PHP数组。 现在,我使用的是这样一个循环:如何更新MySQL中的多行一行?
$updArray = array(1=>11,2=>12,3=>13);
foreach($updArray as $id=>$value)
{
$query = "UPDATE table1 SET column1='$value' WHERE cart_id = '$id'";
mysql_query($query,$link);
}
我想,如果数组包含数千行,这将是缓慢的。 有没有办法更新MySQL表(从数组中应用我的数据)没有循环和更新每一行?
的可能的复制[MYSQL - 在一个查询中使用不同的值更新多行(http://stackoverflow.com/问题/ 25674737/mysql-update-multiple-rows-with-different-values-in-one-query) – julienc
是的。对于小数据集,您可以使用IN()。对于较大的你可能会将更新信息存储在一个单独的文件中,并将其加入到表中以更新。 – Strawberry