47.32. pg_opclass

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

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

Table 47-32. pg_opclass 字段

名字 类型 引用 描述
oid oid 行标识符(隐藏属性;必须明确选择)
opcmethod oid pg_am.oid 操作符类所服务的索引访问方法
opcname name 这个操作符类的名字
opcnamespace oid pg_namespace.oid 这个操作符类的名字空间
opcowner oid pg_authid.oid 操作符类属主
opcfamily oid pg_opfamily.oid 包含该操作符类的操作符族
opcintype oid pg_type.oid 操作符类索引的数据类型
opcdefault bool 如果操作符类是opcintype的缺省,则为真
opckeytype oid pg_type.oid 索引数据的类型,如果和opcintype相同则为零

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