こんにちは。 エキサイト株式会社の三浦です。 MySQLでは、SQL実行時に適切なIndexを自動的に選んでくれる機能(オプティマイザ)があります。 ただこれは、万能というわけではありません。 今回は、手動でIndexを選んだ方が早い例を挙げ、そのことを確認していきます。 なお今回は、 MySQL5.7 環境にて確認を行っています。 MySQLのオプティマイザ MySQLでは、こちらから何も指定しなくても、実行するSQLをもとに検索対象のテーブルに存在するIndexを自動的に選択してくれます。 これは、オプティマイザという機能によって実現されています。 実行するSQL EXPLAIN SELE…