質問: mysql:複数のレコードを1つのクエリで更新する 私は現在、次のようなレコードを更新するために次のクエリ構文を使用しています: ``` update items set sort_index=1 where id=11 update items set sort_index=2 where id=33 update items set sort_index=3 where id=52 ``` だから、私はそれが単一のクエリで複数のレコードを更新することは可能ですか? ありがとう
回答: はい、複数のレコードを1つのクエリで更新することは可能ですが、複数のレコードを異なるデータで更新することはできません。すべてのレコードは同じ「SET」条件で更新されます。 したがって、現在使用しているメソッドがこれらのレコードを更新する正しい方法です。ソートインデックスが1,2,3に更新される複数のレコードがある場合、それらのIDを収集して、次に収集したすべてのレコードを更新する ``` UPDATE items set sort_index=1 WHERE id IN (1,2,3); //where 1, 2 and 3 are the ids ```