MySQLのEXPLAIN(実行プラン)について、まとめます。 EXPLAINは、クエリがどのように実行されるかを確認できます。 例えば、昨日まで1sだったクエリが、今日は10sかかる。という経験はないでしょうか。 EXPLAINを確認すると、意図しないIndexが使われいて、遅くなっていた。ということがあります。 はじめに MySQL 5.6.3以降では、EXPLAIN に使用できる説明可能なステートメントは、SELECT、DELETE、INSERT、REPLACE、UPDATE です。MySQL 5.6.3より前では、SELECT が唯一の説明可能なステートメントです。 今回は、MySQLのバージョンは5.7で試します。 EXPLAIN確認方法 クエリの先頭に EXPLAIN をつけて実行します。 +----+-------------+-------+------------+---