- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:UPDATE - LIMIT 1の警告について)
UPDATE - LIMIT 1の警告について
このQ&Aのポイント
- ステートメントベースのレプリケーションをしている時に、UPDATE 文でLIMIT 句を使用すると警告が出ます。
- データ更新時にRAND()を使ったりした場合、ORDER BYの結果が異なってしまうのが理由です。
- ただし、ORDER BYしていないQueryに対してもwarnが出る理由は分かりません。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
>DELETE FROM `__TABLE__` WHERE `user_id` = 1234 LIMIT 1 user_idがユニーク属性なカラムならLIMITはいりません 逆にユニークではないならLIMITによる抽出はレコードを特定できません。 LIMITは最初に出現する1つですが、ORDER BYしない場合は出現順は保証されないからです。 単体で運用しているならともかくレプリケーションを前提とするなら 更新や削除は厳密にデータを特定できる指定をしてください