加入收藏 | 设为首页 | 会员中心 | 我要投稿 三明站长网 (https://www.0598zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Mysql实例mysql explain用法学习

发布时间:2020-12-24 10:04:08 所属栏目:MySql教程 来源:网络整理
导读:《Mysql实例mysql explain用法学习》要点: 本文介绍了Mysql实例mysql explain用法学习,希望对您有用。如果有疑问,可以联系我们。 导读:本节内容:mysql中explain用法如果在select语句前放上关键词explain,mysql将解释它如何处理select,提供有关表如何

《Mysql实例mysql explain用法学习》要点:
本文介绍了Mysql实例mysql explain用法学习,希望对您有用。如果有疑问,可以联系我们。

导读:本节内容:mysql中explain用法如果在select语句前放上关键词explain,mysql将解释它如何处理select,提供有关表如何联接和联接的次序.expl...

本节内容:
mysql中explain用法
?
如果在select语句前放上关键词explain,提供有关表如何联接和联接的次序.
explain的每个输出行提供一个表的相关信息,并且每个行包括下面的列:
1,id?? select识别符.这是select的查询序列号.
2,select_type 可以为一下任何一种类型
simple? 简单select(不使用union或子查询)
primary?? 最外面的select
union??? union中的第二个或后面的select语句
dependent union? union中的第二个或后面的select语句,取决于外面的查询
union result? union的结果.
subquery 子查询中的第一个select
dependent subquery? 子查询中的第一个select,取决于外面的查询
derived??? 导出表的select(from子句的子查询)
3,table? 输出的行所引用的表.
4,type? 联接类型.下面给出各种联接类型,按照从最佳类型到最坏类型进行排序:
system? 表仅有一行(=系统表).这是const联接类型的一个特例.
?const? 表最多有一个匹配行,它将在查询开始时被读取.因为仅有一行,在这行的列值可被优化器剩余部分认为是常数.const表很快,因为它们只读取一次!
eq_ref 对于每个来自于前面的表的行组合,从该表中读取一行.这可能是最好的联接类型,除了const类型.它用在一个索引的所有部分被联接使用并且索引是unique或primary key
ref? 对于每个来自于前面的表的行组合,所有有匹配索引值的行将从这张表中读取.如果联接只使用键的最左边的前缀,或如果键不是unique或primary key(换句话说,如果联接不能基于关键字选择单个行的话),则使用ref.如果使用的键仅仅匹配少量行,该联接类型是不错的.
ref可以用于使用=或<=>操作符的带索引的列.MYSQL实例

possible_keys 如果该列是null,则没有相关的索引.在这种情况下,可以通过检查where子句看是否它引用某些列或适合索引的列来提高你的查询性能.如果是这样,创造一个适当的索引并且再次用explain检查查询key 列显示mysql实际决定使用的键(索引).如果没有选择索引,键是null.要想强制mysql使用或忽视possible_keys列中的索引,在查询中使用force index、use index或者ignore index.MYSQL实例

5,rows? rows列显示mysql认为它执行查询时必须检查的行数.MYSQL实例

以上简单介绍了mysql中explain语句的用法,希望对大家有所帮助.MYSQL实例

更多精彩文章请关注本站mysql栏目.MYSQL实例

(编辑:三明站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读