mysql优化-explain使用

explain的列分析
  • id:代表select语句的编号
    select编号都是从1开始,如果某select中有子查询则编号递增。

  • select_type:查询类型。
    分成simple(不含子查询)和primary(含子查询或派生查询)。primary下含有subquery(非from子查询)、derived(from型子查询)、union、union result。

  • table:查询针对的表
    实际的表名 如select * from t1
    表的别名 如select * from t2 as tmp
    derived 如from型子查询 select * from (select * from student_info) a
    null 直接计算得到结果,不用走表 如select 1 from dual

  • type:查询的方式。

    • all:全表扫描。从第一行开始扫描,运气不好扫描到最后一行。
    • index:index扫描所有的索引节点
      情况一,能利用上索引,但是又必须全索引扫描
      情况二,利用索引来进行排序,但取出所有的节点
    • range:查询时,能根据索引做范围的扫描
    • ref:通过索引列,可以直接引用到某些数据行
    • eq_ref:通过索引列,直接引用某一行数据
    • const、system:一般按照主键来查询时,易出现const,system
    • null:直接查询某个表达式,不经过表时, 出现NULL
  • possible_keys:可能用到的索引
    注意:系统估计可能用的几个索引,但最终只能使用1个。

  • key:最终用的索引。

  • key_len:使用的索引最大的长度。 长度越小越好

  • ref:连接查询时,前表与后表的引用关系

  • rows:估计要扫描多少行

  • extra

    • index:用到了索引覆盖,效率非常高
    • using where:光靠索引定位不了,还得where判断一下
    • using temporary:用上了临时表
    • using filesort:文件排序
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值