# 直方图

![left](./student-guide/diagram/18-histogram-01-01.png)

-------------------------------------------------------------

直方图是一种对数据（某列）分布情况进行描述的工具，从而让数据库知道它含有哪些数据，从而优化器可以通过直方图判断具体值的分布区间。

大多数数据库都会选择用直方图来进行区间查询的估算。直方图会按照值的大小进行分桶，并用一些简单的指标来描述每个桶（bucket），比如落在桶（bucket）里的值的个数。根据分桶（bucket）策略的不同，常见的直方图可以分为等深直方图(也叫等高直方图)和等宽直方图。等宽直方图每个桶（bucket）保存一个值以及这个值累积频率，等深直方图每个桶需要保存不同值的个数，上下限以及累计频率等。
