在mysql数据库系统中,可以使用show index from 语句可以指定查看表的索引信息。
语法:show index from table_name ;
显示信息如下:
Table:数据库表名
Non_unique:表示是否为唯一索引,为0表示该索引是唯一索引,该列的值不允许重复;为1则该索引不是唯一索引。
Key_name:表示索引名称
Seq_in_index:表示索引的顺序,默认从1开始,如果是组合索引,则遵循最左优先,第1个索引字段为1,第2个索引字段为2,第3个索引字段为3,以此类推。
Column_name:索引字段名称
Collation:表示索引排序形式,默认为A,表示为升序(对应Asc关键字),为D表示为降序(对应Desc关键字),为Null则表示无排序。
Cardinality:表示索引中唯一值的数目的估算值。基数越大,当进行联合索引查询时,mysql使用该索引的机会就越大,当某个字段的重复值越少越适合建索引,所以我们可以根据Cardinality来判断索引是否具有高选择性,如果这个值非常小,那该索引的效率不会很高。可以通过analyze table table_name; 语句来估算得到指定表的索引Cardinality值。
Sub_part:表示索引的前缀,也就是索引的范围,如果在设置索引时指定length(n),如create index index_name on table_name(column(length)); 时,sub_part的值对应length,表示该索引匹配内容仅为该字段的前n个字符。
Packed:表示关键字如何被压缩,如果没有被压缩,则为null,压缩一般包含压缩传输协议、压缩列解决方案和压缩表解决方案。
Null:表示该字段是否允许为Null,为YES表示该字段的值允许为null,为空表示该字段的值不允许为null。
Index_type:表示索引类型,目前mysql索引类型主要有FULLTEXT、HASH、BTREE、RTREE。
Comment:注释内容
Index_comment:索引的注释内容
Visible:表示索引是否对优化器可见,从mysql 8.0版本开始支持不可见索引(invisible index)隐式索引。不可见索引是不被mysql优化器使用的,但是优化器会正常维护它。
使用场景:1、非主键上的索引;2、测试删除索引对性能的影响,而无需进行破坏性更改(在对数据量大的表进行创建和删除索引时,通常会很慢。可以设置invisible/visible属性来禁用/启用索引,验证创建索引和去掉索引的差异)
Expression:表示索引表达式
标签:表示,index,name,show,索引,mysql From: https://www.cnblogs.com/JcHome/p/18069551