PR:この記事にはアフィリエイトリンクが含まれます。
SQLが遅いと感じたら、まずインデックスを追加したくなります。読み取りが速くなっても、更新コストやディスク使用量が増える場合があります。実行計画を先に確認し、どこに時間がかかるのか見てみましょう。
ここではPostgreSQLのSQLチューニングで軸になる実行計画とインデックスを解説し、関連する3冊も紹介します。SQLの基礎から運用、内部構造まで、本ごとの範囲も具体的に見ていきます。
先に全体像
紹介する3冊はSQLの基本からPostgreSQLの運用や内部構造まで、扱う範囲が異なります。早見表で主な内容を並べました。
| 書籍 | 主に扱う内容 | 発売日・ページ数 | 参考価格(税込) |
|---|---|---|---|
PostgreSQL実践入門 ──アーキテクチャ、運用監視、性能改善 | 運用、監視、実行計画、インデックス、PostgreSQL 18 | 2026年2月10日・720ページ | 4,180円 |
[改訂新版]SQL実践入門 ──高速でわかりやすいクエリの書き方 | SQL、実行計画、結合、インデックス | 2025年10月28日・400ページ | 3,080円 |
[改訂3版]内部構造から学ぶPostgreSQL ―設計・運用計画の鉄則 | 内部構造、実行計画、運用、インデックス設計 | 2022年11月26日・360ページ | 3,520円 |
価格は税込の参考価格です。実売は時期や販売店で変わるので、購入時に表示価格をご確認ください。ページ数だけで決めず、知りたいテーマの扱い方も見ておくと内容をつかみやすくなります。
遅さの正体
SQLの応答時間は、データベース内の処理だけで決まりません。アプリとの通信やロック待ちが長ければ、実行計画が良好でも画面の表示は遅くなります。まず遅さがどこで生まれるのかを調べます。
同じSQLでも、対象行数や条件に合う割合が違えば処理方法も変わります。数十行の表なら全件走査が軽く、数百万行から数件を探すならインデックスで候補を絞れる場合があります。
平均応答時間だけを見ると、ときどき極端に遅くなるSQLを見落とします。発生頻度と合計時間を分けてみれば、毎回少しずつ時間を使う処理と特定条件で遅れる処理を見分けやすくなります。
見積もりのズレ
実行計画のcostは、実時間をミリ秒で表す値ではありません。候補の処理方法を比べるための相対的な見積もりなので、最小のcostが実測でも最速とは限らないんですね。
プランナはテーブル統計をもとに、条件に合う行数を推測します。データの偏りや古い統計があると実際の件数との差が広がり、結合方法や読み込み方の判断までずれることがあります。
複数列の値が連動している場合は、列ごとの統計だけで条件に合う行数を正しく推測できないことがあります。ANALYZE後も改善しないなら、データの偏りや列同士の関係、条件式を調べましょう。
インデックスの役割
B-treeは等価検索や範囲検索、並べ替えの処理に使われる代表的なインデックスです。条件に合う行が表の大半なら、インデックスから大量の行を読むより全件走査が速いこともあります。
GINは配列や全文検索など値の集合を扱う場面で、BRINはデータの物理的な並びと値の順序が近い大きな表で候補になります。方式は検索条件とデータの形から考えます。
インデックスオンリースキャンでは、必要な値をインデックスだけで返せる場合に表へのアクセスを減らせます。可視性情報の状態によっては表の確認も必要なので、作成すれば必ず実現するわけではありません。
インデックスは保存領域を使い、行の追加や更新でも保守が必要です。読み取りの負荷を減らしても書き込み側の負荷は増えるため、似たものを増やしすぎず、改善に役立ったインデックスを残しましょう。
PostgreSQL実践入門
技術評論社の『PostgreSQL実践入門 ──アーキテクチャ、運用監視、性能改善』は2026年2月発売の720ページです。現場でPostgreSQLを運用するDBAやWeb開発者に向けて、アーキテクチャ、監視、性能改善まで扱います。
チューニングの流れやボトルネックの特定、モニタリングを扱います。プランナの見積もり誤差や実行計画を操作するヒント句に加え、複数のインデックス方式も学べます。運用と性能改善を一緒に学びたいDBAや開発者におすすめです。
付録にはPostgreSQL 18の新機能と、17から18への設定差分があります。参考価格は税込4,180円で、実売価格は時期や販売店によって変わります。
SQL実践入門
『[改訂新版]SQL実践入門 ──高速でわかりやすいクエリの書き方』はSQLにあまり詳しくないWebアプリケーションプログラマや初級DBエンジニアに向けた400ページの本です。2025年10月28日発売で、SQLの書き方から高速なクエリの考え方まで扱います。
フルスキャンとインデックススキャン、実行コストと実行時間、結合計画の読み方を扱います。カーディナリティや選択率を通じて、インデックスで条件に合う行を絞りやすい場面と難しい場面も解説します。
PostgreSQLのインストールと接続設定は付録で扱っています。SQLと実行計画の基本を学びたい初級者におすすめです。参考価格は税込3,080円で、実売価格は時期や販売店で変動します。
内部構造の本
『[改訂3版]内部構造から学ぶPostgreSQL ―設計・運用計画の鉄則』はPostgreSQLを学習または利用した経験がある人向けです。2022年11月26日発売の360ページで、PostgreSQL 14をベースに解説します。
EXPLAINやANALYZEで実行計画を取得し、ノードの構造やコスト見積もりと実測の差を学べます。ログやテーブル統計、クエリ統計、システム資源を用いた分析も扱い、運用中の原因調査につながる内容です。
複数列や関数、部分インデックスの設計を解説し、更新への影響も取り上げます。インデックス追加やカバリングインデックスによる改善例も掲載されています。内部構造まで学びたい経験者におすすめの一冊です。参考価格は税込3,520円で、実売価格は時期や販売店により変動します。
結論
SQLチューニングでは、実行計画の見積もりと実績を比べ、遅さの原因に合わせて対処するのが基本です。インデックスを追加するときは読み取りの速さと更新負荷の両方を確かめましょう。
本で学んだ内容を現場で試すなら、手元の遅いクエリを一つ題材にして実行計画を追うのがおすすめです。個々の知識が実際の判断と結びつき、SQLの基礎もPostgreSQLの運用知識もぐっと使いやすくなりますよ。
Amazon の PC をスコア化してみた
Amazonにある8〜14インチの小型WindowsタブレットやノートPCを、スペック別にスコア化して比較・ランキング。

![[改訂新版]SQL実践入門 ──高速でわかりやすいクエリの書き方](https://m.media-amazon.com/images/I/413Lq8goDVL._SL500_.jpg)
![[改訂3版]内部構造から学ぶPostgreSQL ―設計・運用計画の鉄則](https://m.media-amazon.com/images/I/51uD8h0R+4L._SL500_.jpg)

