支援的版本: 目前 (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

52.27. pg_stats #

視窗 pg_stats 提供存取儲存在 pg_statistic 目錄中的資訊。這個視窗只允許存取與使用者有權讀取的資料表相對應的 pg_statistic 列,因此允許公眾讀取這個視窗是安全的。

pg_stats 的設計目的也是以比底層目錄更易讀的格式呈現資訊 — 但代價是,每當為 pg_statistic 定義新的欄位類型時,都必須擴展其結構描述。

表 52.27. pg_stats 欄位

欄位 類型

描述

schemaname name (參考 pg_namespace.nspname)

包含資料表的結構描述名稱

tablename name (參考 pg_class.relname)

資料表名稱

attname name (參考 pg_attribute.attname)

此列所描述的欄位名稱

inherited bool

如果為 true,此列包含來自子資料表的值,而不僅僅是指定資料表中的值

null_frac float4

欄位條目為 null 的比例

avg_width int4

欄位條目的平均寬度(以位元組為單位)

n_distinct float4

如果大於零,則為欄位中不同值的估計數量。如果小於零,則為不同值的數量除以列數的負數。(當 ANALYZE 認為不同值的數量可能會隨著資料表的增長而增加時,使用取反形式;當欄位似乎具有固定數量的可能值時,使用正數形式。)例如,-1 表示唯一欄位,其中不同值的數量與列數相同。

most_common_vals anyarray

欄位中最常見值的列表。(如果沒有任何值似乎比其他值更常見,則為 Null。)

most_common_freqs float4[]

最常見值的頻率列表,即每個值的出現次數除以總列數。(當 most_common_vals 為 Null 時。)

histogram_bounds anyarray

將欄位的值分成大致相等群體的值的列表。如果存在,most_common_vals 中的值將從此直方圖計算中省略。(如果欄位資料類型沒有 < 運算符,或者 most_common_vals 列表佔總群體,則此欄位為 Null。)

correlation float4

欄位值的物理列排序和邏輯排序之間的統計相關性。範圍從 -1 到 +1。當值接近 -1 或 +1 時,估計欄位的索引掃描比接近零時更便宜,因為減少了對磁碟的隨機存取。(如果欄位資料類型沒有 < 運算符,則此欄位為 Null。)

most_common_elems anyarray

最常出現在欄位值中的非 Null 元素值的列表。(對於純量類型為 Null。)

most_common_elem_freqs float4[]

最常見元素值的頻率列表,即包含至少一個給定值的列的比例。每個元素頻率後跟兩個或三個附加值;這些是前面每個元素頻率的最小值和最大值,以及可選的 Null 元素頻率。(當 most_common_elems 為 Null 時。)

elem_count_histogram float4[]

欄位值中不同非 Null 元素值的計數的直方圖,後跟不同非 Null 元素的平均數量。(對於純量類型為 Null。)

range_length_histogram anyarray

範圍類型欄位的非空和非 Null 範圍值的長度的直方圖。(對於非範圍類型為 Null。)

無論範圍邊界是否包含在內,此直方圖都使用 subtype_diff 範圍函數計算。

range_empty_frac float4

值為空範圍的欄位條目的比例。(對於非範圍類型為 Null。)

range_bounds_histogram anyarray

非空值和非 NULL 值範圍的下限和上限的直方圖。(非範圍類型為 NULL。)

這兩個直方圖表示為一個範圍陣列,其下限表示下限的直方圖,上限表示上限的直方圖。


陣列欄位中的最大條目數可以使用 ALTER TABLE SET STATISTICS 指令,按欄位逐一控制,或者通過設定 default_statistics_target 執行期參數進行全域控制。

提交更正

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