sql >> データベース >  >> RDS >> Mysql

MySQLエラーを解決する方法FROM句で更新するターゲットテーブルXを指定できませんか?

    これが機能しない理由は、MySQLでは、サブクエリ内で更新(実行可能)しているテーブルを参照できないためです。

    ただし、これは、FROMでテーブル自体の代わりにクエリを使用することで解決できます。これにより、更新するテーブル値を参照する代わりに、要求されたテーブル値をコピーする効果があります。

    したがって、これは、たとえ直感に反していても、効果的に機能します:

    DELETE FROM cancome WHERE user_id IN
     ( SELECT user_id FROM (SELECT * FROM cancome) AS cancomesub
     GROUP BY user_id HAVING COUNT(user_id)>3 )
     limit 3
    



    1. チャットメッセージをデータベースに保存する最良の方法は?

    2. 1つのフィールドをCLOBとして使用するOracle挿入スクリプトを作成するにはどうすればよいですか?

    3. デザインの質問:オンラインでユーザー数を表示する方法は?

    4. MySqlクエリの最適化:注文時に遅すぎる