概要

pg_hint_planはSQLコメント内のヒント (/*+ SeqScan(a) */など) を用いることで実行計画を制御することができます。

PostgreSQLのプランナは静的なルールではなくデータの統計情報を用いたコストベースのオプティマイザを利用しています。プランナ(オプティマイザ)はSQL文に対して可能な限りの実行計画のコストを推定し、最もコストが低い実行計画を選択します。プランナは最適な実行計画を選択するために最善を尽くしますが、データの特性やカラム間の相関を考慮していないため、必ずしも完璧ではありません。