statistics
statistics视图提供表索引完整列相关列信息。具体信息如表1所示。该视图为只读,不允许修改。所有用户对该视图有“读取”权限。由于视图中部分信息基于统计信息获取,执行ANALYZE后再查看(如果数据库中更新数据,建议延迟执行ANALYZE)。如果索引列不是表中的完整列,不在该视图中进行记录。
名称 | 类型 | 描述 |
|---|---|---|
TABLE_CATALOG | varchar(512) | 数据库名称。该字段的值在lower_case_table_names为0时大小写敏感,在lower_case_table_names为1时大小写不敏感。 |
TABLE_SCHEMA | varchar(64) | 索引关联的表所在Schema名称。该字段的值在lower_case_table_names为0时大小写敏感,在lower_case_table_names为1时大小写不敏感。 |
TABLE_NAME | varchar(64) | 索引关联的表名称。该字段的值在lower_case_table_names为0时大小写敏感,在lower_case_table_names为1时大小写不敏感。 |
NON_UNIQUE | bigint | 是否是非唯一索引。如果是非唯一索引,则为1,如果是唯一索引,则为0。 |
INDEX_SCHEMA | varchar(64) | 索引所属的模式的名称。该字段的值在lower_case_table_names为0时大小写敏感,在lower_case_table_names为1时大小写不敏感。 |
INDEX_NAME | varchar(64) | 索引的名称。如果索引是主键,则名称始终是PRIMARY,否则为索引名称。 |
SEQ_IN_INDEX | bigint | 索引列在索引中的序列号。 |
COLUMN_NAME | varchar(64) | 索引列名称。 |
COLLATION | varchar(1) | 列在索引中的排序方式。
|
CARDINALITY | bigint | 索引中唯一值数值的数量的估计值。 |
SUB_PART | bigint | 该字段当前版本暂不支持,值为null。 |
PACKED | varchar(10) | 该字段当前版本暂不支持,值为null。 |
NULLABLE | varchar(3) | 索引列是否可以存在null。
|
INDEX_TYPE | varchar(16) | 索引方法 ( 如:BTREE、UBTREE)。 |
COMMENT | varchar(16) | 该字段当前版本暂不支持,值为null。 |
INDEX_COMMENT | varchar(1024) | 索引注释 。 |
执行ANALYZE更新统计信息后再查看视图:
m_regression=# CREATE TABLE t1(a int) DISTRIBUTE BY hash(a); CREATE TABLE m_regression=# INSERT INTO t1 VALUES (1),(2); INSERT 0 2 m_regression=# CREATE INDEX t1_index_1 ON t1(a); CREATE INDEX m_regression=# ANALYZE; ANALYZE m_regression=# select table_catalog,table_name,index_name,index_type, cardinality from information_schema.statistics where table_name='t1'; table_catalog | table_name | index_name | index_type | cardinality ---------------+------------+------------+------------+------------- m_regression | t1 | t1_index_1 | UBTREE | 2 (1 row)

