43.22. pg_opclass

pg_opclass カタログはインデックスアクセスメソッド演算子クラスを定義します。それぞれの演算子クラスは特定のデータ型のインデックス列のセマンティクスと特定のインデックスアクセスメソッドを定義します。複数の振る舞いをサポートするため、対象となるデータ型/アクセスメソッドの組み合わせについて複数の演算子クラスが存在する場合があることに注意してください。

演算子クラスについては 項33.13 に詳細に説明されています。

表 43-22. pg_opclass

名前参照先説明
opcamidoidpg_am.oid演算子クラスで使用するインデックスアクセスメソッド
opcnamename この演算子クラスの名前
opcnamespaceoidpg_namespace.oidこの演算子クラスの名前空間
opcownerint4pg_shadow.usesysid演算子クラスの所有者
opcintypeoidpg_type.oid演算子クラスの入力データ型
opcdefaultbool opclass が演算子クラスのデフォルトである場合は真
opckeytypeoidpg_type.oidインデックスデータの型、もしくは opcintype と同じ場合はゼロ

演算子クラスを定義する情報の多くは実際には pg_opclass 行には無く、関連する pg_amop および pg_amproc の行にあります。これらの行は演算子クラスの定義の一部と見なされます。つまりこの方法は、リレーションが単一の pg_class 行に加えて pg_attribute や他のテーブルの関連する行で定義されるのと変わりありません。