勉強したことのメモ

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

  関連記事

SendGridを使ってメールサーバを構築せずにPHPからメールを送信する方法

メールサーバを構築せずに独自ドメインのメールアドレスにてメール送信を行いたい。過 ...

PHPでdo-while(0)構文を利用する際のメリット

あるソースコード上にdo-whileという構文が使われていた。見たことのない構文 ...

Codeigniter4で外部ファイル(CSS / JS)の読み込みと共通パーツ化する方法

Codeigniter4.4.4でCSS及びJavaScriptファイルを設置し ...

PHPでBlowfishアルゴリズムを用いた暗号化と復号化方法

PHPでBlowfishアルゴリズムを用いてCBCモードで暗号化と復号化を行いた ...

MySQLでカンマ区切りの検索

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