PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 12.22 » Internes » Catalogues système » pg_statistic_ext

51.51. pg_statistic_ext

Le catalogue pg_statistic_ext contient des définitions des statistiques étendues pour l'optimiseur de requêtes. Chaque ligne de ce catalogue correspond à un objet statistique créé avec CREATE STATISTICS.

Tout comme pg_statistic, pg_statistic_ext_data ne doit pas être lisible par tout le monde car son contenu peut être considéré comme sensible. (Par exemple, les combinaisons de valeurs les plus communes des colonnes pourraient être intéressantes.) pg_stats_ext est une vue, lisible par tout le monde, interrogeant pg_statistic_ext_data (après une jointure sur pg_statistic_ext) en exposant uniquement les informations sur les tables et colonnes visibles par l'utilisateur courant.

Tableau 51.51. Colonnes de pg_statistic_ext

NomTypeRéférenceDescription
stxrelidoidpg_class.oidTable contenant les colonnes décrites par cet objet
stxnamename Nom de l'objet statistique
stxnamespaceoidpg_namespace.oidOID du schéma contenant l'objet statistique
stxowneroidpg_authid.oidPropriétaire de l'objet statistique
stxkeysint2vectorpg_attribute.attnum Un tableau de numéros de colonnes, indiquant les colonnes de la table couvertes par l'objet statistique ; par exemple, une valeur 1 3 signifierait que les première et troisième colonnes de la table sont couvertes
stxkindchar[]  Un tableau contenant des codes pour les types statistiques activés ; les valeurs valides sont : d pour des statistiques n-distinct, f pour des statistiques de dépendance fonctionnelle et m pour des statistiques sur les valeurs les plus communes (most common values ou MCV).

Un enregistrement de pg_statistic_ext est rempli complètement lors du CREATE STATISTICS, mais les vraies valeurs statistiques ne sont pas calculées à ce moment-là. Les commandes ANALYZE ultérieures calculent les valeurs souhaitées et peuplent l'enregistrement dans pg_statistic_ext_data.