支援的版本:目前 (17) / 16 / 15 / 14 / 13
開發版本:devel
不支援的版本: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。


提交更正

如果您在文件中發現任何不正確、與特定功能的使用經驗不符或需要進一步澄清的內容,請使用此表單報告文件問題。