1

これと同様の方法を使用して、一度に複数のレコードを更新したい:

MySQL の複数の更新

しかし、重複していないものを無視するMySQLコマンドはありますか? 何かのようなもの

ON DUPLICATE UPDATE ON UNIQUE IGNORE

(ところで、このコードを作成したばかりです)

?

4

1 に答える 1

2

複数の行を更新できる単一の UPDATE コマンドを使用できないのはなぜですか!

UPDATE mytable 
SET Col2 = CASE
  WHEN Col1 = 1 THEN 'new Value From someplace';
  WHEN Col1 = 2 THEN 'War and Peace';
  ELSE Col2
END

ELSE Col2は非常に重要です。そうしないと、テーブルの残りの部分が NULL で上書きされます。

さらにCASEブロックを追加して、さらに多くの列を更新できます。

これにより、INSERTING UNIQUE レコードの頭痛の種を回避できます。

お役に立てれば。

于 2013-01-18T16:41:35.963 に答える