支持的版本:当前 (17) / 16 / 15 / 14 / 13
开发版本:开发版
不支持的版本:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1

51.26. pg_index #

目录 pg_index 包含有关索引的部分信息。其余部分主要在 pg_class 中。

表 51.26. pg_index

列名 类型

描述

indexrelid oid (引用 pg_class.oid)

此索引的 pg_class 条目的 OID

indrelid oid (引用 pg_class.oid)

此索引所属表的 pg_class 条目的 OID

indnatts int2

索引中的列总数(复制 pg_class.relnatts);此数字包括键属性和包含的属性

indnkeyatts int2

索引中的键列的数量,不包括任何包含列,这些列仅存储而不参与索引语义

indisunique bool

如果为 true,则这是一个唯一索引

indnullsnotdistinct bool

此值仅用于唯一索引。如果为 false,则此唯一索引将认为空值是不同的(因此索引可以在列中包含多个空值,这是 PostgreSQL 的默认行为)。如果为 true,它将认为空值是相等的(因此索引在列中只能包含一个空值)。

indisprimary bool

如果为 true,则此索引表示表的主键(当此值为 true 时,indisunique 应始终为 true)

indisexclusion bool

如果为 true,则此索引支持排除约束

indimmediate bool

如果为 true,则在插入时立即强制执行唯一性检查(如果 indisunique 不为 true,则无关紧要)

indisclustered bool

如果为 true,则上次在此索引上对表进行聚簇

indisvalid bool

如果为 true,则该索引当前对于查询有效。False 表示索引可能不完整:它仍然必须由 INSERT/UPDATE 操作修改,但不能安全地用于查询。如果它是唯一的,则也不能保证唯一性属性为 true。

indcheckxmin bool

如果为 true,则在当前 pg_index 行的 xmin 低于其 TransactionXmin 事件范围之前,查询不得使用索引,因为该表可能包含带有它们可以看到的不兼容行的断开的 HOT 链

indisready bool

如果为 true,则该索引当前已准备好进行插入。False 表示索引必须被 INSERT/UPDATE 操作忽略。

indislive bool

如果为 false,则索引正在被删除的过程中,应忽略其所有用途(包括 HOT 安全决策)

indisreplident bool

如果为 true,则此索引已使用 ALTER TABLE ... REPLICA IDENTITY USING INDEX ... 选择为复制标识

indkey int2vector (引用 pg_attribute.attnum)

这是一个 indnatts 值的数组,指示此索引索引哪些表列。例如,1 3 的值表示第一个和第三个表列构成索引条目。键列位于非键(包含)列之前。此数组中的零表示相应的索引属性是表列上的表达式,而不是简单的列引用。

indcollation oidvector (引用 pg_collation.oid)

对于索引键中的每一列(indnkeyatts 值),这包含用于索引的排序规则的 OID,如果列不是可排序的数据类型,则为零。

indclass oidvector (引用 pg_opclass.oid)

对于索引键中的每一列(indnkeyatts 值),这包含要使用的运算符类的 OID。有关详细信息,请参见 pg_opclass

indoption int2vector

这是一个 indnkeyatts 值的数组,用于存储每列的标志位。这些位的含义由索引的访问方法定义。

indexprs pg_node_tree

对于不是简单列引用的索引属性,其表达式树(以 nodeToString() 表示)。这是具有 indkey 中每个零条目的一个元素的列表。如果所有索引属性都是简单引用,则为 Null。

indpred pg_node_tree

部分索引谓词的表达式树(以 nodeToString() 表示)。如果不是部分索引,则为 Null。


提交更正

如果您在文档中发现任何不正确、与特定功能的体验不符或需要进一步澄清的内容,请使用此表格报告文档问题。