MySQLMySQLのチューニングに関して、特にINDEXを貼ったときのSELECT文で躓いたのでメモ。 INDEXとはまず、INDEXを使わないシンプルなSQL文で、クエリに対してMySQLがどのように応答するのだろうか。以下、サンプル。 SELECT * FROM hoge WHERE foo = 'bar'; 上記のようなクエリを実行すると、MySQLはhogeテーブルに格納されている全てのレコードを読み、fooフィールドに文字列barが存在するか確認する。レコードの数が数百数千であれば問題ないのだろうが、数十万件数百万件のレコードが記録されている場合、これでは効率が悪い。この問題を解決するために、INDEXが存在する。まさしく書籍における牽引のように、レコードの格納場所を予め指定しておく便利な機能だ。投げられたクエリに応じて、可能性のある行を素早く選出できるようになる。INDEXを