pg_stats_ext
Представление pg_stats_ext
предоставляет доступ к информации о каждом объекте расширенной статистики в базе данных, объединяя информацию, хранящуюся в каталогах pg_statistic_ext и pg_statistic_ext_data. Это представление разрешает доступ только к строкам pg_statistic_ext и pg_statistic_ext_data, которые соответствуют таблицам, на чтение которых у пользователя есть разрешение, и поэтому безопасно разрешать публичный доступ на чтение к этому представлению.
pg_stats_ext
также предназначен для представления информации в более удобном для чтения формате, чем не относящиеся к нему каталоги — ценой того, что его схема должна расширяться всякий раз, когда в pg_statistic_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-distinct подсчитывается для комбинаций значений столбцов. Если больше нуля, предполагаемое количество различных значений в комбинации. Если меньше нуля, отрицательное число различных значений, деленное на количество строк. (Отрицательная форма используется, когда ANALYZE считает, что количество различных значений, вероятно, увеличивается по мере роста таблицы; положительная форма используется, когда столбец, кажется, имеет фиксированное число возможных values.). Например, -1 указывает на уникальную комбинацию столбцов, в которой количество различных комбинаций равно количеству строк |
dependencies | pg_dependencies | Статистика функциональных зависимостей |
most_common_vals | text[] | Список наиболее распространенных комбинаций значений в столбцах. (Ноль, если никакие комбинации не кажутся более распространенными, чем любые others.) |
most_common_val_nulls | bool[] | Список флагов NULL для наиболее распространенных комбинаций значений. (Ноль, когда most_common_vals is.) |
most_common_freqs | float8[] | Список частот наиболее распространенных комбинаций, i.e., количество вхождений каждой из них, деленное на общее количество строк. (Ноль, когда most_common_vals is.) |
most_common_base_freqs | float8[] | Список базовых частот наиболее распространенных комбинаций, i.e., произведение частот на значение. (Ноль, когда most_common_vals is.) |
Максимальное количество записей в полях массива можно контролировать по столбцам с помощью команды ALTER TABLE SET STATISTICS
или глобально, задав параметр времени выполнения default_statistics_target
.