47.32. pg_opclass

pg_opclass定义索引访问方法操作符类。 每个操作符类为一种特定数据类型和一种特定索引访问方法定义索引字段的语义。 一个操作符类本质上指定一个特定的操作符族适用于一个特定的可索引的字段数据类型。 索引的字段实际可用的族中的操作符集是接受字段的数据类型作为它们的左边的输入的那个。

操作符类在第 35.14 节里有比较详细的描述。

表 47-32. pg_opclass 字段

名字类型引用描述
oidoid 行标识符(隐藏属性;必须明确选择)
opcmethodoidpg_am.oid操作符类所服务的索引访问方法
opcnamename 这个操作符类的名字
opcnamespaceoidpg_namespace.oid这个操作符类的名字空间
opcowneroidpg_authid.oid操作符类属主
opcfamilyoidpg_opfamily.oid包含该操作符类的操作符族
opcintypeoidpg_type.oid操作符类索引的数据类型
opcdefaultbool 如果操作符类是opcintype的缺省,则为真
opckeytypeoidpg_type.oid索引数据的类型,如果和opcintype相同则为零

一个操作符类的opcmethod必须匹配包含它的操作符族的 opfmethod。 同样,对于任意给定的opcmethodopcintype的组合, 不能有超过一个pg_opclass行有opcdefault为真。