Exploring the Mystery of the ‘unknown table ‘column_statistics’ in information_schema’

Exploring the Mystery of the ‘unknown table ‘column_statistics’ in information_schema’

If you are a developer or database administrator, you might have come across the ‘column_statistics’ table while working with information_schema. This table is often a mystery to many professionals in the field of database management. In this article, we will explore this unknown table and unravel the mysteries surrounding it.

What is ‘column_statistics’?

The ‘column_statistics’ table is a system table in information_schema which stores statistics about the columns of tables in a database. These statistics include the minimum and maximum values, the number of distinct values, and the number of null values in each column. This information is used by the query optimizer to create efficient execution plans for queries.

Why is it Unknown?

Despite its importance in database management, the ‘column_statistics’ table remains relatively unknown to many professionals in the field. One reason for this is that its name does not clearly indicate its purpose. Another reason is that not all database management systems have this table. Some systems store column statistics in different ways.

How to Access ‘column_statistics’

To access the ‘column_statistics’ table, you can use the SELECT statement on the ‘column_statistics’ view in the information_schema. For example, to get statistics for the ‘id’ column in the ‘users’ table, you can use:

SELECT * FROM information_schema.column_statistics WHERE table_name = ‘users’ AND column_name = ‘id’;

Use Cases for ‘column_statistics’

The ‘column_statistics’ table can be useful in many scenarios. For example, it can help in identifying columns that contain mostly null values, which may need to be optimized for query performance. It can also help in identifying columns with a large number of distinct values, which may be useful for data analysis.


The ‘column_statistics’ table is an important but often unmentioned aspect of database management. Its purpose is to store statistics about the columns of tables in a database, which is essential for optimizing query performance. By understanding what ‘column_statistics’ is, how to access it, and its use cases, developers and database administrators can leverage this table to improve the performance of their databases.

Leave a Reply

Your email address will not be published. Required fields are marked *