May 23rd 2024:
PostgreSQL 17 Beta 1 Released!

This documentation is for an unsupported version of PostgreSQL.

You may want to view the same page for the current version, or one of the other supported versions listed above instead.

You may want to view the same page for the current version, or one of the other supported versions listed above instead.

`pg_stats`

#The view `pg_stats`

provides access to the information stored in the `pg_statistic`

catalog. This view allows access only to rows of `pg_statistic`

that correspond to tables the user has permission to read, and therefore it is safe to allow public read access to this view.

`pg_stats`

is also designed to present the information in a more readable format than the underlying catalog — at the cost that its schema must be extended whenever new slot types are defined for `pg_statistic`

.

**Table 52.27. pg_stats Columns**

Column Type Description |
---|

Name of schema containing table |

Name of table |

Name of column described by this row |

If true, this row includes values from child tables, not just the values in the specified table |

Fraction of column entries that are null |

Average width in bytes of column's entries |

If greater than zero, the estimated number of distinct values in the column. If less than zero, the negative of the number of distinct values divided by the number of rows. (The negated form is used when |

A list of the most common values in the column. (Null if no values seem to be more common than any others.) |

A list of the frequencies of the most common values, i.e., number of occurrences of each divided by total number of rows. (Null when |

A list of values that divide the column's values into groups of approximately equal population. The values in |

Statistical correlation between physical row ordering and logical ordering of the column values. This ranges from -1 to +1. When the value is near -1 or +1, an index scan on the column will be estimated to be cheaper than when it is near zero, due to reduction of random access to the disk. (This column is null if the column data type does not have a |

A list of non-null element values most often appearing within values of the column. (Null for scalar types.) |

A list of the frequencies of the most common element values, i.e., the fraction of rows containing at least one instance of the given value. Two or three additional values follow the per-element frequencies; these are the minimum and maximum of the preceding per-element frequencies, and optionally the frequency of null elements. (Null when |

A histogram of the counts of distinct non-null element values within the values of the column, followed by the average number of distinct non-null elements. (Null for scalar types.) |

A histogram of the lengths of non-empty and non-null range values of a range type column. (Null for non-range types.) This histogram is calculated using the |

Fraction of column entries whose values are empty ranges. (Null for non-range types.) |

A histogram of lower and upper bounds of non-empty and non-null range values. (Null for non-range types.) These two histograms are represented as a single array of ranges, whose lower bounds represent the histogram of lower bounds, and upper bounds represent the histogram of upper bounds. |

The maximum number of entries in the array fields can be controlled on a column-by-column basis using the `ALTER TABLE SET STATISTICS`

command, or globally by setting the default_statistics_target run-time parameter.