勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

MySQLで使用するインデックスを指定する

   2014/05/22  PHP

ちゃんと指定してるのにインデックスが使用されていない場合、
オプティマイザに知らせる方法があった。

■参考サイト
http://serversmanvps.ヒナギク.com/2011/11/09/%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%82%A4%E3%83%B3%E3%83%87%E3%83%83%E3%82%AF%E3%82%B9%E3%82%92%E6%98%8E%E7%A4%BA%E3%81%99%E3%82%8B-mysql-%E3%82%A4%E3%83%B3%E3%83%87%E3%83%83%E3%82%AF%E3%82%B9/

SELECT *
FROM estimates
USE INDEX(IDX_IMPORT, IDX_FSEARCH)
WHERE total>=10000 AND type=1

実際に1つのSQL文だけ、どうしても選択されなかったので使用。

 

//2013/10/05追記

USE INDEXではどうも使用されないケースがあった。

FORCE INDEXを利用することで解決。

 

■参考サイト

http://www.hirohama.biz/mysql/2007/06/29-110659.html

 

 - PHP

  関連記事

PHPでメール送信時に返信先(Reply-To)を指定する方法

PHPにてメールを送信し、そのメールに対して返信しようとすると通常は送信元のメー ...

LINEのURLプレビューを表示させないようPHP側で制御する方法

公開中の特定のページのみLINEのURLプレビューを表示させないよう制御したいと ...

PHPにて「みんなの自動翻訳」のAPIで指定したテキストの言語判定する方法

迷惑メール対策等でメール本文が日本語のもののみ受信したい場合がある。ただ、本文内 ...

PHPにてユニークかつランダム英数字の文字列を作成する方法

PHPでユニークな文字列を作成したかった。MySQLとかのオートインクリメントの ...

フォルダにリンク制限をかける

imgというフォルダがあり、直接URLを叩いても 中身を見られないけど、同一サー ...