执行分析:

 1.id 含义:表示查询的子句或者操作表的顺序

  三种情况:id 相同,执行的顺序由上到下;

       id不同,id越大优先级越高,越先执行;

       id相同不相同同时存在;

2.select_type;

2.1类型有哪些:

 2.2各类型表示的含义:

 概括:primary:表示最后执行的表;

            union Result:union合并两个select 查询结果

3.table:这行数据关联的是那张表的

4.type:优化级别

概述:

  system:表只有一条记录;

  const:通过主键或者唯一索引

  eq_ref:通过唯一索引查出一条数据;

    const和eq_ref都是通过唯一索引查询一条区别是什么呢?const是通过唯一索引的常量查询;eq_ref也是通过唯一索引查询,只不过是通过唯一索引关联表确认一条记录

  ref:通过非唯一索引查询多条数据

5.possible_keys:显示可能应用这张表的索引,一个或者多个,但是不一定被实际应用到。

6.key:实际中应用到的索引,为null,表示没有应用索引

7.key_len:表示使用的索引字节数,使用的越短越好。

8.ref:显示索引的哪一列被使用了,如果可能的话,如果是一个常数,那些列或者常量被用于查找索引列上的值。

9.rows:表示查询的数据结果,需要读取数据的行数。

10.extra

10.1 using filesort: 说明mysql会对数据使用一个外部索引排序,而不是按照表内的索引顺序排序

10.2 using temporary   使用了临时表保存中间结果,mysql在对查询结果排序时使用了临时表,常见排序order by 和分组group by

10.3using index

其他不常用:

  

 

5.mysql的explain的分析的更多相关文章

  1. MySQL 之 Explain 输出分析

    ​MySQL 之 Explain 输出分析 背景 前面的文章写过 MySQL 的事务和锁,这篇文章我们来聊聊 MySQL 的 Explain,估计大家在工作或者面试中多多少少都会接触过这个.可能工作中 ...

  2. 【mysql】explain性能分析

    1. explain的概念 使用EXPLAIN 关键字可以模拟优化器执行SQL 查询语句,从而知道MySQL 是如何处理你的SQL 语句的.分析你的查询语句或是表结构的性能瓶颈. 用法: Explai ...

  3. MySQL的explain语句分析

    +----+-------------+-------+------------+------+---------------+-----+---------+------+------+------ ...

  4. mysql中explain优化分析

    效率比较  range >index  > all

  5. mysql优化:explain分析sql语句执行效率

    Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优 ...

  6. 【Explain】mysql之explain详解(分析索引的最佳使用)

    在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain 这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句 ...

  7. mysql优化----explain的列分析

    sql语句优化: : sql语句的时间花在哪儿? 答: 等待时间 , 执行时间. 等待时间:看是不是被锁住了,那就不是语句层面了是服务端层面了,看连接数内存. 执行时间:到底取出多少行,一次性取出1万 ...

  8. mysql优化–explain分析sql语句执行效率

    Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优 ...

  9. 用 Explain 命令分析 MySQL 的 SQL 执行

    在上一篇文章<MySQL常见加锁场景分析>中,我们聊到行锁是加在索引上的,但是复杂的 SQL 往往包含多个条件,涉及多个索引,找出 SQL 执行时使用了哪些索引对分析加锁场景至关重要. 比 ...

  10. Mysql之EXPLAIN显示using filesort

    索引使用经验: 1. 一条 SQL 语句只能使用 1 个索引 (5.0-),MySQL 根据表的状态,选择一个它认为最好的索引用于优化查询 2. 联合索引,只能按从左到右的顺序依次使用 Using w ...

随机推荐

  1. 修改ctags让fzf.vim插件显示C,C++方法声明的标签

    背景 在 vim 中使用 fzf.vim 插件可以进行方便的搜索文件, 源码TAG, GIT 记录等, 最近抽空看了下 BTags 命令在 c, c++ 文件中, 无法显示头文件中的函数声明 标签问题 ...

  2. Vue框架:9,Vue3的用法,setup函数,ref和reactive,计算属性和监听属性,生命周期,toRefs,script setup的作用和lang,Vue后台管理模板

    目录 前端开发之Vue框架 一.Vue3 1.Vue3创建项目 2.setup函数 3.ref和reactive 4.计算属性和监听属性 5.生命周期 6.toRefs 7.script setup的 ...

  3. ES6中的class对象和它的家人们

    在ES6中新增了一个很重要的特性: class(类).作为一个在2015年就出了的特性, 相信很多小伙伴对class并不陌生.但是在日常开发中使用class的频率感觉并不高(可能仅限于作者),感觉对c ...

  4. addeventlistener可以这样表示

    事件绑定方法1: //找到id为category的div,绑定onmouseover事件 $("#category")[0].addEventListener("mous ...

  5. input type = file 在部分安卓手机上无法调起相册

    移动端H5web 用input type = file 在部分安卓手机上无法调起摄像头拍照,有的也无法访问相册而是直接访问了文档,解决办法是: 加上 accept = "image/*&qu ...

  6. python如何画高光谱立体图像

    语句含义:spectral.view_cube(image,bands=[29,19,9])  中的29,19和9是第几个波段,可以改成数据波段数以内的其他的数值

  7. JavaScript之void

    void是什么 void是JavaScript重要的关键字,该操作符指定要计算一个表达式但不返回. 语法格式: void func() javascript:void func() 或 void (f ...

  8. 一个方便IO单元测试的C#扩展库

    对于我们.Net程序员,System.Web.Abstractions我们都非常熟悉,主要作用于Web可以实现单元测试,他是在.Net framework 3.5 sp1开始引入的,很好的解决项目表示 ...

  9. 七、25.创建user子分支并把代码推送到码云仓库中

    打开终端点击+新建一个终端 注意 :如下操作都是在2:powershell下进行 先来检查一下当前所处分支 git branch 我们应该把这些代码都写到user分支上 接下来应该把这些代码统一迁移到 ...

  10. CodeGym自学笔记05——类名

    1.Java 程序由类组成.每个类都存储在一个单独的文件中,其文件名称与类名一致.该文件的扩展名为 java. 2.当我们有许多类文件时,我们会将它们分组到文件夹和子文件夹中.此外,类还会被分组到包和 ...