我有數據的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