メモ帳

読むな

MySQLのDELETE文をEXPLAINで確認する

MySQL5.5でDELETE文をEXPLAINで見ようとしたらエラーになった

mysql> EXPLAIN DELETE FROM samples WHERE title = "title";
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELETE FROM samples WHERE title = "title"' at line 1

EXPLAINでDELETE文が使えるのは5.6.3からで5.5系では実行できないみたい(泣)

dev.mysql.com

MySQL 5.6.3 現在、EXPLAIN に使用できる説明可能なステートメントは、SELECT、DELETE、INSERT、REPLACE、および UPDATE です。MySQL 5.6.3 より前では、SELECT が唯一の説明可能なステートメントです。

5.5で確認したいときは代替として以下で対応する

EXPLAIN SELECT 1 FROM samples WHERE title = "title";