勉強したことのメモ

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でPOST送信する際に多次元配列も送る方法
PHPでPOST送信する際に多次元配列も送る方法

PHPでPOST送信する際に多次元配列も送りたかった。ただ普通に送ろうとするとO ...

PHPMailerでエンベロープFrom(Return-Path)を指定する方法
PHPMailerでエンベロープFrom(Return-Path)を指定する方法

同じメールアドレスから送信したメールがmb_send_mail関数だと受信できる ...

PHPで配列内から重複を削除する
PHPで配列内から重複を削除する

やりたかった事はそのまま、配列内から重複を削除したかった。 ■参考サイト htt ...

CodeIgniter4&Bootstrap&jQueryで簡易版お問い合わせページの作成
CodeIgniter4&Bootstrap&jQueryで簡易版お問い合わせページの作成

CodeIgniter4.4.4&Bootstrap&jQuer ...

PHPバージョンアップの際に削除された関数(MySQL関数等)を使う方法
PHPバージョンアップの際に削除された関数(MySQL関数等)を使う方法

PHP5系で制作されたシステムを8系でも動くようにリプレイスしてほしいという案件 ...