-
ftnk さんの復習
プログラム内のデータベース処理高速化TIPS:phpspot開発日誌
http://phpspot.org/blog/archives/2010/03/tips.html
基本的な事から応用的な事まで参考になりそうだったのでメモ程度にご紹介。* explainでインデックスが使われているかを調べる
* 最も速いクエリは、クエリを発行しないこと、ということでデータをキャッシュしよう
Memcached, CSQL Cache, AdoDB などでそれが可能
* 必要じゃないモノをselect しないようにする
select * from table;
↓
select id from table;
* limit を使って取得する結果を少なくする
* foreach ループなどの中でsqlクエリをループさせないで1回にまとめられるのはまとめる
* サブクエリの代わりにjoinを使う
* ワイルドカードを使う場合は注意する。インデックスが使われないものは低速になる
* OR の代わりに UNIONを使う
* インデックスを適切に使う復習登録日 : 2010年03月10日復習した日 : 2010年03月10日次の復習日 : 2010年03月11日 (あと 4 回) (142日遅れ)ドキュメント形式 : default