postgresql index インデックス

インデックスが使えない検索条件 - Qiita 2017

インデックスの適用基準

以上をまとめると、ある列に対してインデックスの作成を検討すべきケースは次のようになります。

  • WHERE句において検索条件になっている。ただし、文字列型において、前方一致検索でない場合を除く
  • ORDER BYの対象になっている
  • GROUP BYの対象になっている
  • 重複が比較的少ない
  • 抽出結果が比較的少ない

なお、主キーやユニーク制約のある列には自動的にインデックスが貼られるので、あらためてインデックスを作成する必要はありません。

[ThinkIT] 第4回:インデックスの活用によるチューニング (2/2)

インデックスの使用状況

使われていないインデックスを調べるには pg_stat_user_indexes を見るのが手っ取り早い。

select indexrelname, idx_scan, idx_tup_read, idx_tup_fetch
from pg_stat_user_indexes
where
indexrelname not like '%_pkey' and
idx_scan = 0;

無料サービスを使え! – 役立つ無料サービスのレビュー、まとめ、比較記事を紹介