PostgreSQLLa base de données la plus sophistiquée au monde.

Version anglaise

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(7).

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

Nom Type Référence Description
stxrelid oid pg_class.oid Table contenant les colonnes décrites par cet objet
stxname name   Nom de l'objet statistique
stxnamespace oid pg_namespace.oid OID du schéma contenant l'objet statistique
stxowner oid pg_authid.oid Propriétaire de l'objet statistique
stxkeys int2vector pg_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
stxkind char[]   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.