テーブルのコンテンツを別のテーブルにアーカイブし、元のテーブルの元の行を削除するデュアル MySQL クエリを作成しようとしています。
他の領域では基本クエリが正常に機能しています。以下のクエリは、2 番目のテーブルに依存して、アーカイブおよび削除する必要がある行を選択するのに役立ちます。
最初のクエリのネストされた選択に AS が表示され、削除クエリの AS の近くに構文エラーが発生します。
私は調査し、調査し、さまざまなコードの組み合わせを試しましたが、クエリを機能させることができません。クエリは PDO を使用して PHP で記述されているため、PDO タグは無視してください。問題はありません。
INSERT INTO usetwca (r_id, c_id, o_id, t_id, s_id, ip_address, timestamp, timestamp_archived) SELECT :r_id, usetwc.c_id, usetwc.o_id, usetwc.t_id, usetwc.s_id, usetwc.ip_address, usetwc.timestamp, :timestamp FROM usetwc JOIN useo ON useo.o_id = usetwc.o_id AND useo.best_fit IS NULL WHERE usetwc.user_id = :user_id;
DELETE FROM usetwc JOIN useo ON useo.o_id = usetwc.o_id AND useo.best_fit IS NULL WHERE usetwc.user_id = :user_id;