首批通过分布式安全可靠测评,为关键业务系统打造
查询统计信息
更新时间:2026-07-23 20:41:25
当收集完统计信息或者想确认某一个表有没有统计信息时,OceanBase 数据库优化器提供丰富的视图用于查询各类统计信息。
查询索引、表级的统计信息
针对表级统计信息和索引统计信息,可以通过查询以下视图获取。
| 模式 | 视图名称 | 描述 |
|---|---|---|
| Oracle | ALL_TAB_STATISTICS |
用于查询表级的统计信息 |
| Oracle | DBA_TAB_STATISTICS |
用于查询表级的统计信息 |
| Oracle | USER_TAB_STATISTICS |
用于查询表级的统计信息 |
| Oracle | ALL_IND_STATISTICS |
用于查询索引统计信息 |
| Oracle | DBA_IND_STATISTICS |
用于查询索引统计信息 |
| Oracle | USER_IND_STATISTICS |
用于查询索引统计信息 |
| MySQL | OCEANBASE.DBA_TAB_STATISTICS |
用于查询表级统计信息 |
| MySQL | OCEANBASE.DBA_IND_STATISTICS |
用于查询索引的统计信息 |
其中,视图中需要注意的字段包括:
NUM_ROWS:表或者索引的总行数。AVG_ROW_LEN:表的平均行长。LAST_ANALYZED:收集的时间,非 NULL 表示该表或者索引收集过统计信息。STATTYPE_LOCKED:表统计信息是否被锁定,非 NULL 表示该表统计信息锁定。
查询列级的统计信息
针对列级统计信息,可以通过查询以下视图获取。
| 模式 | 视图名称 | 描述 |
|---|---|---|
| Oracle | ALL_TAB_COL_STATISTICS |
用于查询 GLOBAL 列级统计信息 |
| Oracle | DBA_TAB_COL_STATISTICS |
用于查询 GLOBAL 列级统计信息 |
| Oracle | USER_TAB_COL_STATISTICS |
用于查询 GLOBAL 列级统计信息 |
| Oracle | ALL_PART_COL_STATISTICS |
用于查询 PARTITION 列级统计信息 |
| Oracle | DBA_PART_COL_STATISTICS |
用于查询 PARTITION 列级统计信息 |
| Oracle | USER_PART_COL_STATISTICS |
用于查询 PARTITION 列级统计信息 |
| Oracle | ALL_SUBPART_COL_STATISTICS |
用于查询 SUBPARTITION 列级统计信息 |
| Oracle | DBA_SUBPART_COL_STATISTICS |
用于查询 SUBPARTITION 列级统计信息 |
| Oracle | USER_SUBPART_COL_STATISTICS |
用于查询 SUBPARTITION 列级统计信息 |
| MySQL | OCEANBASE.DBA_TAB_COL_STATISTICS |
用于查询 GLOBAL 列级统计信息 |
| MySQL | OCEANBASE.DBA_PART_COL_STATISTICS |
用于查询 PARTITION 列级统计信息 |
| MySQL | OCEANBASE.DBA_SUBPART_COL_STATISTICS |
用于查询 SUBPARTITION 列级统计信息 |
其中,视图中需要注意的字段包括:
NUM_DISTINCT:列的 ndv。LOW_VALUE:列的最小值。HIGH_VALUE:列的最大值。DENSITY:列的稠密度,和直方图相关。NUM_NULLS:列的 NULL 个数。NUM_BUCKETS:直方图桶个数。LAST_ANALYZED:收集的时间,非 NULL 表示该列的统计信息在过去的某个时间点已被收集过。SAMPLE_SIZE:本次收集的统计信息参考的数据行数。AVG_COL_LEN:平均列长。HISTOGRAM:直方图类型,非 NULL 表示该列收集了直方图。
查询列的直方图统计信息
针对直方图统计信息,可以通过查询以下视图获取。
| 模式 | 视图名称 | 描述 |
|---|---|---|
| Oracle | ALL_TAB_HISTOGRAMS |
用于查询 GLOBAL 列级直方图信息 |
| Oracle | DBA_TAB_HISTOGRAMS |
用于查询 GLOBAL 列级直方图信息 |
| Oracle | USER_TAB_HISTOGRAMS |
用于查询 GLOBAL 列级直方图信息 |
| Oracle | ALL_PART_HISTOGRAMS |
用于查询 PARTITION 列级直方图信息 |
| Oracle | DBA_PART_HISTOGRAMS |
用于查询 PARTITION 列级直方图信息 |
| Oracle | USER_PART_HISTOGRAMS |
用于查询 PARTITION 列级直方图信息 |
| Oracle | ALL_SUBPART_HISTOGRAMS |
用于查询 SUBPARTITION 列级直方图信息 |
| Oracle | DBA_SUBPART_HISTOGRAMS |
用于查询 SUBPARTITION 列级直方图信息 |
| Oracle | USER_SUBPART_HISTOGRAMS |
用于查询 SUBPARTITION 列级直方图信息 |
| MySQL | OCEANBASE.DBA_TAB_HISTOGRAMS |
用于查询 GLOBAL 列级直方图统计信息 |
| MySQL | OCEANBASE.DBA_PART_HISTOGRAMS |
用于查询 PARTITION 列级直方图信息 |
| MySQL | OCEANBASE.DBA_SUBPART_HISTOGRAMS |
用于查询 SUBPARTITION 列级直方图信息 |
其中,视图中需要注意的字段包括:
ENDPOINT_NUMBER:截止到当前桶累积的列总行数。ENDPOINT_ACTUAL_VALUE:当前桶结束值对应的打印的字符面值。ENDPOINT_REPEAT_COUNT:当前桶结束值的频次。