★PostgreSQLカンファレンス2024 12月6日開催/チケット販売中★
他のバージョンの文書 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

54.28. pg_stats_ext #

pg_stats_extビューはpg_statistic_extpg_statistic_ext_dataカタログに格納されている情報へのアクセスを提供します。 このビューは、ユーザが所有するテーブルに対応するpg_statistic_extpg_statistic_ext_dataの行に対してのみアクセスを許可しています。 よって、このビューに対して一般に読み込みを許可しても安全です。

pg_stats_extも、その基礎となっているカタログよりも、より読みやすい書式で情報を提供するように設計されています。 しかし、これはpg_statistic_extに対して新しいスロット型が定義されるたびに、スキーマが拡張されなくてはならない、という犠牲を払っています。

表54.28 pg_stats_extの列

列 型

説明

schemaname name (参照先 pg_namespace.nspname

テーブルがあるスキーマの名前

tablename name (参照先 pg_class.relname

テーブルの名前

statistics_schemaname name (参照先 pg_namespace.nspname

拡張統計情報オブジェクトを含むスキーマの名前

statistics_name name (参照先 pg_statistic_ext.stxname

拡張統計情報オブジェクトの名前

statistics_owner name (参照先 pg_authid.rolname

拡張統計情報オブジェクト所有者

attnames name[] (参照先 pg_attribute.attname

拡張統計情報オブジェクトが定義された列名

exprs text[]

拡張統計情報オブジェクトが含む式

kinds char[]

このレコードに対して有効になった拡張統計情報の型

inherited bool (参照先 pg_statistic_ext_data.stxdinherit

trueの場合は、統計情報には指定されたリレーションの値だけではなく、子テーブルの値も含まれます。

n_distinct pg_ndistinct

列値の組み合わせに対するN個別統計カウント。 ゼロよりも大きければ、その組み合わせに対する個別の値の数の見積で、ゼロよりも小さければ、個別の値の数の見積を符号反転し行数で割ったものです。 (負の値の形式は、ANALYZEがテーブルが大きくなるにつれ個別の値の数も大きくなると判断した場合に使用されます。 正の値の形式は、可能な値の数が定まった数になると思われる時に使用されます。) たとえば-1は、列のユニークな組み合わせに対し異なる組み合わせの数が行数と同じであることを示しています。

dependencies pg_dependencies

関数従属性統計情報

most_common_vals text[]

列における最も共通した値の組み合わせのリスト。 (他の組み合わせよりも共通した組み合わせが見つからない場合はNULL。)

most_common_val_nulls bool[]

最も共通した値の組み合わせに対するNULLフラグのリスト。 (most_common_valsがNULLならNULL。)

most_common_freqs float8[]

最も共通した組み合わせの発生頻度のリスト。つまり、発生数を合計行数で割ったもの。 (most_common_valsがNULLならNULL。)

most_common_base_freqs float8[]

最も共通した組み合わせの発生頻度の基底のリスト。つまり値ごとの頻度の積。 (most_common_valsがNULLの時はNULLです。)


配列フィールド中の最大項目数はALTER TABLE SET STATISTICSコマンドを使って列ごとに管理することも、あるいはdefault_statistics_target実行時パラメータで広域的に設定することもできます。