ど素人から毛を生やす。<延>

ダブランとTRPGを愛する、社会不適合者ぎりぎりのweb会社員が、
仕事の技術碌を書き連ねたり夢を叶えようとしたり趣味にいそしんだりする場末のブログ。

HN 餅。
好きなポケモン ダブラン・バタフリー・ピンクの悪魔ラッキー・ナマコブシ 最近モスノウが気になる。

[MySQL]該当レコード群の最新1件のみをUPDATE

Web > Other 2021年11月2日

どもです。毎度の備忘的記事。

WHERE指定した条件でUPDATEを行いたいけれど、更新対象はその条件の最新1レコードのみにしたい。
という場合、連番のIDや更新日時など、どのレコードが最新なのか判断基準になるカラムがあれば、簡単に可能という話。

UPDATE [対象テーブル] SET [更新内容] WHERE [条件] ORDER BY [基準となるカラム] DESC LIMIT 1

つまり、UPDATE には ORDER BY や LIMIT の指定が有効だという話です。

もちろん、応用すれば「最新10件のみ更新」とか「最古の1件を更新」とか、いくらでもできます。
サブクエリとかそういうややこしいもんは一切要らないのだ!

この記事は役に立ちましたか?
  • _(:3」∠)_ 面白かった (0)
  • (・∀・) 参考になった (0)
  • (`・ω・´) 役に立った (0)