statistics
statistics视图提供表索引完整列相关列信息。该视图为只读,不允许修改。所有用户对这个视图有“读取”权限。由于视图中部分信息基于统计信息获取,执行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) |
列在索引中的排序方式: A(升序)、D (降序)。 |
|
CARDINALITY |
bigint |
索引中唯一值数值的数量的估计值。 |
|
SUB_PART |
bigint |
索引前缀。如果列仅被部分索引,则为索引的字符数;如果整列都被索引,则为NULL。 |
|
PACKED |
varchar(10) |
该字段当前版本暂不支持,置null。 |
|
NULLABLE |
varchar(3) |
索引列是否可以存在null。 yes(可以存在null), ''(不可以存在null)。 |
|
INDEX_TYPE |
varchar(16) |
索引方法 ( 如:BTREE、UBTREE)。 |
|
COMMENT |
varchar(16) |
该字段当前版本暂不支持,置null。 |
|
INDEX_COMMENT |
varchar(1024) |
索引注释 。 |
执行analyze更新统计信息后再查看视图:
my_db=# create table t1(a int); CREATE TABLE my_db=# insert into t1 values (1),(2); INSERT 0 2 my_db=# create index t1_index_1 on t1(a); CREATE INDEX my_db=# analyze; ANALYZE my_db=# 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 ---------------+------------+------------+------------+------------- my_db | t1 | t1_index_1 | UBTREE | 2 (1 row)