はじめに
どういう時に貼るかという判断を備忘録がてら残すため。
indexが有効なケース
- テーブルの行数が多い(一万行以上)
- 欲しい情報が全体の20%未満
indexが有効でないケース
- カーディナリティが低い列の検索の場合
- あいまい検索の場合
- あと下記もききにくい
- NULLを条件とする検索
- 否定系
- 演算を使う
- age + 10 とかの時に、ageにindex貼っても効果がない
indexのデメリット
- 追加、更新、削除が遅くなる可能性がある
まとめ
ざっくりとした雰囲気としては、開発をする上でこのカラムよくでてくるなって物に貼るといいのではないかなと。
indexを貼っても使ってくれなければ意味はない。
ステージングなどで実行計画は確認しておいた方がいい。