9.31. Системные информационные функции #
Postgres Pro предоставляет функцию для исследования сложной статистики, создаваемой командой CREATE STATISTICS.
9.31.1. Исследование списков MCV #
pg_mcv_list_items(pg_mcv_list) →setof record
Функция pg_mcv_list_items возвращает набор записей, описывающих все элементы в многоколоночном списке MCV. Эти записи имеют следующие столбцы:
| Имя | Тип | Описание |
|---|---|---|
index | integer | индекс элемента в списке MCV |
values | text[] | значения, сохранённые в элементе списка MCV |
nulls | boolean[] | флаги, помечающие значения NULL |
frequency | double precision | частота вхождения этого элемента MCV |
base_frequency | double precision | базовая частота вхождения этого элемента MCV |
Использовать функцию pg_mcv_list_items можно следующим образом:
SELECT m.* FROM pg_statistic_ext join pg_statistic_ext_data on (oid = stxoid),
pg_mcv_list_items(stxdmcv) m WHERE stxname = 'stts'; Значения типа pg_mcv_list можно получить только из столбца pg_statistic_ext_data.stxdmcv.
9.31. Statistics Information Functions #
Postgres Pro provides a function to inspect complex statistics defined using the CREATE STATISTICS command.
9.31.1. Inspecting MCV Lists #
pg_mcv_list_items(pg_mcv_list) →setof record
pg_mcv_list_items returns a set of records describing all items stored in a multi-column MCV list. It returns the following columns:
| Name | Type | Description |
|---|---|---|
index | integer | index of the item in the MCV list |
values | text[] | values stored in the MCV item |
nulls | boolean[] | flags identifying NULL values |
frequency | double precision | frequency of this MCV item |
base_frequency | double precision | base frequency of this MCV item |
The pg_mcv_list_items function can be used like this:
SELECT m.* FROM pg_statistic_ext join pg_statistic_ext_data on (oid = stxoid),
pg_mcv_list_items(stxdmcv) m WHERE stxname = 'stts';
Values of the pg_mcv_list type can be obtained only from the pg_statistic_ext_data.stxdmcv column.