

pg_statistic
   Le catalogue pg_statistic stocke des données
   statistiques sur le contenu de la base de données. Les entrées sont créées
   par ANALYZE, puis
   utilisées par le planificateur de requêtes.
   Les données statistiques sont, par définition des approximations,
   même si elles sont à jour.
  
   D'habitude, il existe une entrée, avec
   stainherit = false, pour
   chaque colonne de table qui a été analysée. Si la table a des enfants, une
   seconde entrée avec stainherit =
   true est aussi créé. Cette ligne représente les
   statistiques de la colonne sur l'arbre d'héritage, autrement dit les
   statistiques pour les données que vous voyez avec
   SELECT , alors que la ligne
   colonne FROM
    table*stainherit = false représente
   le résultat de
   SELECT .
  column FROM ONLY table
   pg_statistic stocke aussi les données
   statistiques des valeurs des expressions d'index. Elles sont décrites
   comme si elles étaient de vraies colonnes ; en particulier,
   starelid référence l'index. Néanmoins, aucune
   entrée n'est effectuée pour une colonne d'index ordinaire sans expression
   car cela est redondant avec l'entrée correspondant à la colonne sous-jacente de la
   table. Actuellement, les entrées pour les expressions d'index ont toujours
   stainherit = false.
  
   Comme des statistiques différentes peuvent être appropriées pour des types de
   données différents, pg_statistic ne fait
   qu'un minimum de suppositions sur les types de statistiques qu'il
   stocke. Seules des statistiques extrêmement générales (comme les valeurs
   NULL) ont des colonnes dédiées. Tout le reste est stocké dans des
   « connecteurs », groupes de colonnes associées
   dont le contenu est identifié par un numéro de code dans l'une des colonnes
   du connecteur. Pour plus d'information, voir
   src/include/catalog/pg_statistic.h.
  
   pg_statistic ne doit pas être lisible par le
   public,
   car même les données statistiques sont sensibles.
   (Exemple : les valeurs maximales et minimales d'une colonne de salaire
   peuvent être intéressantes).
   pg_stats est
   une vue sur pg_statistic accessible à tous, qui
   n'expose que les informations sur les tables accessibles à
   l'utilisateur courant.
  
Tableau 52.49. Colonnes de pg_statistic
| Type Description | 
|---|
| 
         Table ou index à qui la colonne décrite appartient | 
| 
         Numéro de la colonne décrite | 
| 
         Si vrai, les statistiques incluent les colonnes enfants de l'héritage, pas uniquement les valeurs de la relation spécifiée | 
| 
         Fraction des entrées de la colonne qui ont une valeur NULL | 
| 
         Taille moyenne, en octets, des entrées non NULL | 
| 
         
        Nombre de valeurs distinctes non NULL dans la colonne. Une
        valeurs positive est le nombre réel de valeurs distinctes. Une valeur
        négative est le négatif d'un multiplieur pour le nombre de lignes dans
        la table ;
        par exemple, une colonne dans laquelle 90% des lignes ne sont pas NULL
        et dans laquelle chaque valeur non NULL apparaît deux fois en moyenne,
        pourrait être représentée avec un
         | 
| 
         
        Numéro de code indiquant le type de statistiques stockées dans
        « le connecteur » numéro  | 
| 
         
        Opérateur utilisé pour dériver les statistiques stockées dans
        « le connecteur » numéro  | 
| 
         
        Le collationnement utilisé pour dériver les statistiques enregistrées
        dans le  | 
| 
         
        Statistiques numériques du type approprié pour
        « le connecteur » numéro  | 
| 
         
        Valeurs de données de la colonne du type approprié pour
        « le connecteur » numéro  |