搜索
您的当前位置:首页正文

数据库索引及explain用法

来源:哗拓教育

查询一张表的索引字段:show index from tablename

image.png

table : 表的名称

Non_unique : 表示索引值是否可以重复,为0是不能重复,1是可以重复

Key_name : 索引名称,如果是主键的话 则为PRIMARY

Seq_in_index : 索引中序列的序列号,从1开始,如果是组合索引 那么按照字段在建立索引时的顺序排列 如 ('c1', 'c2', 'c3') 那么 分别为 1, 2, 3

Column_name : 字段名

Collation: 列以什么方式存储在索引中。A=有值、升序显示 或 NULL(无分序)

Sub_part : 索引的长度

  • 部分被编入索引,该值表示索引的长度
  • 整列被编入索引,该值显示为null

Packed : 指示关键字如何被压缩。如果没有被压缩,则为NULL

Null : 该列值有NULL,则为YES,否则为NO

Index_type:所用索引方法(BTREE, FULLTEXT, HASH, RTREE)

Comment:关于在其列中没有描述的索引的信息

Index_comment : 为索引创建时提供了一个注释属性的索引的任何评论



explain

用法:在select语句前加上explain
显示mysql如何使用索引来处理select语句以及连接表,可以帮助选择更好的索引和写出更优化的查询语句。

image.png

table:表名
type:显示连接使用的访问类型
从最好到最差的连接类型为const、eq_reg、ref、range、index和ALL
possible_keys:表中可能出现的索引,根据where后的字段得出,如果没写条件会显示NULL

possible_keys

key_len:使用的索引的长度

ref:显示索引的哪一列被使用了,如果可能的话,是一个常数

rows:MYSQL认为必须检查的用来返回请求数据的行数

Extra:额外信息

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

热门图文

Top