ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

explain查询字段解释

2021-01-15 19:00:09  阅读:170  来源: 互联网

标签:解释 UNION explain 查询 索引 key id SELECT


1.id

  • id相同的情况下:表示没有执行的先后顺序
  • id不同的时候:id数值越大越先执行
  • id有相同和 不同的:相同的查询为一组,同上,id越大越先执行

2.select_type

select-type含义
SIMPLE简单的select查询,查询中不包含子查询或者UNION
PRIMARY查询中若包含任何复杂的子查询,最外层查询标记为该标识
SUBQUERY在SELECT或WHERE列表中包含子查询
DERIVED在FROM列表中包含的子查询,被标记为DERIVED MYSQL会地柜执行这些子查询,把结果集放在临时表中
UNION若第二个SELECT出现在UNION之后,则标记为UNION;若UNION包含在FROM子句的子查询中,外层SELECT将被标记为:DERIVED
UINON RESULT从UNION表中获取结果的SELECT

3.Type

Type含义
NULLMySQL不访问任何表,索引,直接返回结果
system表只有一行记录(等于系统表),这是const类型的特例,一般不会出现
const表示通过索引一次就找到了,const用于比较pimary key 或者 unique索引。因为只匹配一行数据,所以很快;
eq_ref类似ref,区别在于使用的是唯一索引,使用主键的关联查询,关联查询出的记录只有一条,常见于主键或唯一索引扫描
ref非唯一性索引扫描,返回匹配某个单独值的所有行,本质上也是一种索引访问,返回所有非匹配某个单独值的所有行
range只检索给定返回的行,使用一个索引来选择行。where 之后出现between,<,>,in等操作
indexindex与ALL的区别为index类型只是遍历了索引输,通常比ALL快,ALL是遍历数据文件
ALL将遍历全表以找到匹配的行

4.table

数据是哪一个表的数据

5.explain之key

  1. possible_keys:显示可能应用在这张表的索引,一个或多个。
  2. key:实际使用的索引,若为null,表示未走索引
  3. key_len:表示索引中使用的字节数,该值为索引字段最大可能长度,并非实际使用长度,在不损失精确性的前提下,长度越短越好

6. rows

扫描行的数量;

7.extra

extra含义
using filesort说明mysql会对数据使用一个外部的索引排序,而不是按照表内的索引顺序进行读取,称为文件排序
using temporary使用临时表保存中间结果,Mysql 在对查询结果排序时使用临时表,常见于 order bygroup by
using index表示相应的select 操作使用了覆盖索引,避免访问表的数据行;

标签:解释,UNION,explain,查询,索引,key,id,SELECT
来源: https://blog.csdn.net/Matthew93/article/details/112682417

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有