SQLでインデックスを確認する
PostgreSQLで指定したテーブルのインデックスを確認するにはpg_indexesシステムカタログをSELECTする。
SELECT * FROM pg_indexes WHERE tablename = 'テーブル名';
例えばusersテーブルのインデックスを確認するには以下のように実行する。
SELECT * FROM pg_indexes WHERE tablename = 'users';
schemaname | tablename | indexname | tablespace | indexdef
------------+-----------+------------+------------+-----------------------------------------------------------------
public | users | users_pkey | | CREATE UNIQUE INDEX users_pkey ON public.users USING btree (id)
(1 row)
pg_indexesシステムカタログには以下のカラムが含まれる。
schemaname: スキーマ名tablename: テーブル名indexname: インデックス名tablespace: テーブルスペースindexdef: インデックスの定義
\dコマンドでインデックスを確認する
PostgreSQLのpsqlコマンドラインツールでは\dコマンドを使う。
\d テーブル名
例えばusersテーブルのインデックスを確認するには以下のように実行する。
\d users
Table "public.users"
Column | Type | Collation | Nullable | Default
---------+---------+-----------+----------+-----------------------------------
id | integer | | not null | nextval('users_id_seq'::regclass)
name | text | | |
email | text | | |
address | text | | |
Indexes:
"users_pkey" PRIMARY KEY, btree (id)
末尾のIndexes:以下にインデックスが表示される。
\第一線のプログラマーの行動原理を学べる!/
