勉強したことのメモ

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でアクセスIPからランダム英数字のIDを作成

PHPで掲示板などにあるようなアクセスIPからランダム英数字のIDを作成したかっ ...

PHPで日時比較時の注意

PHPで日時を比較する際にミスがあったのでメモ。 基本形は下記。 $limit_ ...

phpQueryを利用したjQueryライクなスクレイピング方法

phpQueryというライブラリを使用することでjQueryのセレクタ指定のよう ...

PHPで「Unable to allocate~」とエラー

PHPで「Unable to allocate memory for pool」 ...

MySQLでカンマ区切りの検索

カンマ区切りで入っているデータを検索する場合に ピンポイントな関数があったのでメ ...