2023-01-06
MySQLのDELETE、UPDATE文で更新対象のテーブルを含むサブクエリを直接実行することができない
例えば以下のようなテーブルがあるとして、
以下のDelete文はエラーとなります。
FROM 句で更新対象のテーブル 'members' を指定することはできません
この場合、サブクエリ内で1段階層を深くして削除対象のidを抽出するようにすると実行が可能になります。
Query OK, 3 rows affected (0.01 sec)
また、直接From句で参照しない場合は問題なく実行できます。
Query OK, 3 rows affected (0.01 sec)
以下は検証環境構築のメモです。
MySQLに接続する。
データベース作成、データ投入。
Select句は直接参照しても問題無く実行できる