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

MySQL EXPLAIN结果集分析 - 附带大量案例

发布时间:2019-09-18 13:14:19 所属栏目:建站 来源:佚名
导读:副标题#e# EXPLAIN:查看SQL语句的执行计划 EXPLAIN命令可以帮助我们深入了解MySQL基于开销的优化器,还可以获得很多可能被优化器考虑到的访问策略的细节,以及当运行SQL语句时哪种策略预计会被优化器采用,在优化慢查询时非常有用。 执行explain之后结果集

using where: 表示存储引擎搜到记录后进行了后过滤(POST-FILTER),如果查询未能使用索引,using where的作用只是提醒我们mysql要用where条件过滤结果集

  1. mysql> explain select * from test where id > 1; 
  2. +----+-------------+-------+-------+---------------+---------+---------+------+-------+-------------+ 
  3. | id | select_type | table | type  | possible_keys | key     | key_len | ref  | rows  | Extra       | 
  4. +----+-------------+-------+-------+---------------+---------+---------+------+-------+-------------+ 
  5. |  1 | SIMPLE      | test  | range | PRIMARY       | PRIMARY | 8       | NULL | 34252 | Using where | 
  6. +----+-------------+-------+-------+---------------+---------+---------+------+-------+-------------+ 

using temporary 表示mysql需要使用临时表来存储结果集,常见于排序和分组查询

  1. mysql> explain select * from test where id in (1,2) group by bnet_id; 
  2. +----+-------------+-------+-------+-----------------------------------------+---------+---------+------+------+----------------------------------------------+ 
  3. | id | select_type | table | type  | possible_keys                           | key     | key_len | ref  | rows | Extra                                        | 
  4. +----+-------------+-------+-------+-----------------------------------------+---------+---------+------+------+----------------------------------------------+ 
  5. |  1 | SIMPLE      | test  | range | PRIMARY,IDX(event_key-bnet_Id),idx_bnet | PRIMARY | 8       | NULL |    2 | Using where; Using temporary; Using filesort | 
  6. +----+-------------+-------+-------+-----------------------------------------+---------+---------+------+------+----------------------------------------------+ 

(编辑:西安站长网)

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

热点阅读