51.36. pg_partitioned_table

カタログpg_partitioned_tableはテーブルがどのようにパーティションに分けられているかに関する情報を格納します。

表51.36 pg_partitioned_tableの列

列 型

説明

partrelid oid (references pg_class.oid)

このパーティションテーブルのpg_classのエントリのOID

partstrat char

パーティショニング戦略。 hならハッシュパーティションテーブル、lならリストパーティションテーブル、rなら範囲パーティションテーブル。

partnatts int2

パーティションキーの列の数

partdefid oid (references pg_class.oid)

このパーティションのデフォルトパーティションのpg_classエントリのOID。 このパーティションテーブルにデフォルトパーティションがなければ0。

partattrs int2vector (references pg_attribute.attnum)

これはpartnatts値の配列で、どのテーブル列がパーティションキーの一部となっているかを示します。 例えば、値が1 3であれば、テーブルの1番目と3番目の列がパーティションキーを構成することを意味します。 この配列がゼロの場合は、対応するパーティションキー列が式であって、単なる列参照ではないことを示します。

partclass oidvector (references pg_opclass.oid)

これは、パーティションキーの各列について、使用する演算子クラスのOIDが入ります。 詳細についてはpg_opclassを参照してください。

partcollation oidvector (references pg_collation.oid)

これは、パーティションキーの各列について、パーティショニングで使用する照合のOIDが入ります。 列が照合できないデータ型の場合はゼロが入ります。

partexprs pg_node_tree

単純な列参照ではないパーティションキー列についての(nodeToString()形式での)式ツリーです。 partattrsがゼロの各エントリについて1つの要素があるリストになっています。 すべてのパーティションキー列が単純な参照ならNULLとなります。