5.mysql的explain的分析
执行分析:
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的分析的更多相关文章
- MySQL 之 Explain 输出分析
MySQL 之 Explain 输出分析 背景 前面的文章写过 MySQL 的事务和锁,这篇文章我们来聊聊 MySQL 的 Explain,估计大家在工作或者面试中多多少少都会接触过这个.可能工作中 ...
- 【mysql】explain性能分析
1. explain的概念 使用EXPLAIN 关键字可以模拟优化器执行SQL 查询语句,从而知道MySQL 是如何处理你的SQL 语句的.分析你的查询语句或是表结构的性能瓶颈. 用法: Explai ...
- MySQL的explain语句分析
+----+-------------+-------+------------+------+---------------+-----+---------+------+------+------ ...
- mysql中explain优化分析
效率比较 range >index > all
- mysql优化:explain分析sql语句执行效率
Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优 ...
- 【Explain】mysql之explain详解(分析索引的最佳使用)
在日常工作中,我们会有时会开慢查询去记录一些执行时间比较久的SQL语句,找出这些SQL语句并不意味着完事了,些时我们常常用到explain 这个命令来查看一个这些SQL语句的执行计划,查看该SQL语句 ...
- mysql优化----explain的列分析
sql语句优化: : sql语句的时间花在哪儿? 答: 等待时间 , 执行时间. 等待时间:看是不是被锁住了,那就不是语句层面了是服务端层面了,看连接数内存. 执行时间:到底取出多少行,一次性取出1万 ...
- mysql优化–explain分析sql语句执行效率
Explain命令在解决数据库性能上是第一推荐使用命令,大部分的性能问题可以通过此命令来简单的解决,Explain可以用来查看SQL语句的执行效 果,可以帮助选择更好的索引和优化查询语句,写出更好的优 ...
- 用 Explain 命令分析 MySQL 的 SQL 执行
在上一篇文章<MySQL常见加锁场景分析>中,我们聊到行锁是加在索引上的,但是复杂的 SQL 往往包含多个条件,涉及多个索引,找出 SQL 执行时使用了哪些索引对分析加锁场景至关重要. 比 ...
- Mysql之EXPLAIN显示using filesort
索引使用经验: 1. 一条 SQL 语句只能使用 1 个索引 (5.0-),MySQL 根据表的状态,选择一个它认为最好的索引用于优化查询 2. 联合索引,只能按从左到右的顺序依次使用 Using w ...
随机推荐
- react中redux怎么使用
一.redux是什么? redux 就是react 全局状态管理,作用是存放全局数据 二.核心 state:存放数据 reducer:修改仓库数据 是一个函数,参数一:仓库中的数据,参数2:行为 ac ...
- Spring Boot自动配置原理懂后轻松写一个自己的starter
目前很多Spring项目的开发都会直接用到Spring Boot.因为Spring原生开发需要加太多的配置,而使用Spring Boot开发很容易上手,只需遵循Spring Boot开发的约定就行了, ...
- vue .sync的理解
假如父组件传给子组件的值,子组件接受之后,想要改变父组件传过来的值,就可以使用sync .sync是vue中用于实现简单的"双向绑定"的语法糖,在平时的开发中是非常使用的. vue ...
- 【Java-01-3】java基础-基本语法(3)(数组,多维数组)
import java.io.*; public class _07_Array { public static void main(String[] args) { // 1 定义数组 System ...
- 使用AJAX绑定点击事件将接口值返回渲染到指定位置
AJAX 是局部的刷新或者叫做无刷新技术 首先是js部分,这里注意不紧要引入express模块,还需要把cors模块也引入 在下面添加了判断,用来判断所取得的随机值是否在0.5以上 接下来是HTML部 ...
- 支持管道、重定向、*匹配的miniShell
先上成果图 源代码 仅供技术点的分享,抄袭者就算了,所以main.c就不贴了 /* * split_line.c */ #include <stdio.h> #include <st ...
- vue+html5实现上传图片
原理:dispatchEvent 自定义触发事件,常用于自定义鼠标事件或点击事件 ,原生控件input打开上传文件方案:vue项目,点击自己的上传文件图标,通过dispatchEvent主动触发一个自 ...
- loj3076
参照 E_Space 的候选队论文,我们建出广义串并联图进行「删一度点」「缩二度点」「叠合重边」操作合并信息的表达式树. 我们把其描述成一颗 Leafy Tree. 我们不妨在每个叶节点处存一个点或者 ...
- 如何使用visual studio code的插件remote ssh远程操作virtual box虚拟机
0 Remote-SSH是什么?为什么要用它? The Remote-SSH extension lets you use any remote machine with a SSH server a ...
- VSCode 修改终端显示字体 字体间隔过大
参考链接: https://code84.com/172442.html