私はデータを持つPHP配列を持っています。 さて、私はこのようなサイクルを使用しています:MySQLの複数の行を1行で更新するには?
$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 - 1つのクエリ内の異なる値を持つUPDATE複数の行](http://stackoverflow.com/質問/ 25674737/mysql-update-multiple-rows-with-different-values-in-one-query) – julienc
はい。小さなデータセットの場合、IN()を使用することができます。大規模な場合は、更新情報を別のファイルに保存して、更新するテーブルに追加することができます。 – Strawberry