次のクエリを実行しようとしていますが、エラーがスローされます。
DELETE b
FROM parim_lang a
JOIN parim_lang b
ON b.lang_hash = a.lang_hash
AND b.lang_language = SUBSTRING(a.lang_google_translation, LOCATE('-', a.lang_google_translation) + 1)
WHERE a.lang_google_translation REGEXP '^[a-z]+-[a-z]+'
LIMIT 20
このクエリは無制限に機能します..
エラーは次のようになります。
SQL エラー (1064): SQL 構文にエラーがあります。7行目の「LIMIT 20」付近で使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください
これを見つけました:
複数テーブル構文の場合、DELETE は各 tbl_name から条件を満たす行を削除します。この場合、ORDER BY と LIMIT は使用できません。
これに対する回避策はありますか?