同テーブルのサブクエリで値をUPDATEする

  • 17
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

同テーブルのとあるカラムの最大+1の値で違うレコードを更新

エラー

UPDATE hoge_tbl SET val1 = (SELECT MAX(val1)+1 FROM hoge_tbl) WHERE val2 = 10;

エラー無し

UPDATE hoge_tbl, (SELECT MAX(val1)+1 AS MAX FROM hoge_tbl) A set val1 = A.MAX WHERE val2 = 10;