43.16. pg_index

pg_index カタログはインデックス情報の一部を保持しています。その他のほとんどの情報は pg_class にあります。

表 43-16. pg_index Columns

名前参照先説明
indexrelidoidpg_class.oidインデックス用の pg_class エントリの OID
indrelidoidpg_class.oidこのインデックスが使われるテーブル用の pg_class エントリの OID
indkeyint2vectorpg_attribute.attnum このインデックスがどのテーブル列をインデックスとしているかを示す(INDEX_MAX_KEYS)までの indnatts 配列の値です。たとえば、1 3 は 1 番目と 3 番目のテーブル列がインデックスキーとなっていることを示します。この配列でゼロとなっているのは対応するインデックスの属性が単純列参照ではなくテーブル列にわたった演算式であることを示します。
indclassoidvectorpg_opclass.oid 演算子クラスのOIDを保持しています。詳細は pg_opclass を参照してください。
indnattsint2 インデックス内の列数(pg_class.relnatts の複製)
indisuniquebool 真の場合は一意のインデックス
indisprimarybool  真の場合このインデックスはテーブルの主キーを表します。(この値が真のとき indisunique は常に真でなければなりません。)
indisclusteredbool 真の場合はテーブルを最後にクラスタしたのはこのインデックス。
indexprstext  単純列参照でないインデックス属性に対する(nodeToString() 表現形式による)演算式ツリー。単純参照の場合は全てのインデックス属性は NULL 値。
indpredtext  部分インデックス属性に対する(nodeToString() 表現形式による)演算式ツリー。部分インデックスでなければ NULL 値。