`

mysql执行计划分析

 
阅读更多

前言

id是一组数字,表示查询中执行select子句或操作表的顺序。

如果id相同,则执行顺序从上至下。

如果是子查询,id的序号会递增,id越大则优先级越高,越先会被执行。

id如果相同,则可以认为是一组,从上往下顺序执行,所有组中,id越高,优先级越高,越容易执行。

 


 



 

 



 



因为id为主键,因此遍历id索引表便能把所有t1表的所有id值获取出来了,不用去遍历实体表

 

 



 

这里idx_name_pwd组合索引确定唯一行,因此要获取某一行的所有字段信息,只能匹配组合索引的全部或者前缀,只匹配后缀是不会利用该组合索引的

 

 



 


 

 

一个查询只能用其中一个索引

 

 


表中数据有6条,但rows值为6,表示只用到了索引的‘NAME’部分而并没有用到索引的‘PWD’部分,要充分用到索引,where条件与group条件两者的顺序要与复合索引顺序一致


 



 

wheregroup能共用复合索引

 

---------------------------------------------------------------------

id  username  passward  passward_salt  ext

1   a         11        z              f
2   b         12        y              e

PRIMARY KEY (`id`),
KEY `idx_u` (`username`),



 

 查id用到的是idx_u这个索引,这表明索引默认都会包含主键

 

-------------------------------------------------------------------------------------------------

 

id  username  passward  passward_salt  ext

1   a         11        z              f
2   b         12        y              e
3   a         13        x              d

PRIMARY KEY (`id`),
KEY `idx_u` (`username`),KEY `idx_u_p` (`username`, `password`),



 条件顺序不必与索引顺序一致

 

其他链接:

MySQL explain执行计划解读

  • 大小: 57 KB
  • 大小: 84.2 KB
  • 大小: 45.6 KB
  • 大小: 52 KB
  • 大小: 75.2 KB
  • 大小: 23.8 KB
  • 大小: 21 KB
  • 大小: 57.6 KB
  • 大小: 17.8 KB
  • 大小: 27.7 KB
  • 大小: 24.8 KB
  • 大小: 24.8 KB
  • 大小: 4.9 KB
  • 大小: 15.1 KB
分享到:
评论

相关推荐

    MySQL SQL执行计划分析与优化方案.pptx

    MySQL SQL执行计划分析与优化方案.pptx

    MySQL执行计划的深入分析

    主要给大家介绍了关于MySQL执行计划的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    Java高级试听课:MySQL 执行计划查看、索引失效分析、加锁分析.txt

    Java高级试听课:MySQL 执行计划查看、索引失效分析、加锁分析

    MySQL SQL执行计划分析与优化.pdf

    MySQL SQL执行计划分析与优化.pdf

    mysql索引和执行计划的使用

    MySQL索引的最佳实践和执行计划的使用分析,包括索引的设计原则,SQL语句的优化原则等

    MYSQL5 LOG 分析工具.rar

    MySQL记录日志查询对于跟踪PHP MySQL体系下的MySQL负载调优问题很有用处,比如安装了很多...重启mysql就可以将数据库所有操作记录下来,为了方便分析,提供一个简单快速的查看器。 打开文件设置执行目录与地址即可

    MySQL中通过EXPLAIN如何分析SQL的执行计划详解

    在MySQL中,我们可以通过EXPLAIN命令获取MySQL如何执行SELECT语句的信息,包括在SELECT语句执行过程中表如何连接和连接的顺序。 下面分别对EXPLAIN命令结果的每一列进行说明: .select_type:表示SELECT的类型,常见...

    Mysql深入探索之Explain执行计划详析

    使用explain关键字可以模拟优化器执行 SQL 查询语句,从而知道 MySQL 是如何处理你的 SQL 语句的,分析你的 select 语句或是表结构的性能瓶颈,让我们知道 select 效率低下的原因,从而改进我们的查询。 explain 的...

    mysql的计划任务与事件调度实例分析

    本文实例讲述了mysql的计划任务与事件调度。分享给大家供大家参考,具体如下: mysql事件是基于预定义的时间表运行的任务,因此有时它被称为预定事件。mysql事件也被称为“时间触发”,因为它是由时间触发的,而不是...

    mysql执行计划id为空(UNION关键字)详解

    本文主要给大家介绍了关于mysql执行计划id为空(UNION关键字)的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的 介绍吧 UNION 操作符用于合并两个或多个 SELECT 语句的结果集。例如,我有两个...

    MySQL,通过explain分析低效SQL的执行计划。

    type:MySQL在表中找到所需行的方式,即访问类型。 possible_keys:查询时,可能使用的索引。 key:实际使用的索引。 key_len:使用到索引字段的长度。 rows:扫描行的数量。 Extra:执行情况的说明和描述。  执行...

    新版 MySQL DBA 高级视频 基于MySQL 5.7 MySQL 8.0版本.rar

    │ │ 4_MySQL索引底层结构和执行计划.mp4 │ │ 5_MySQL索引优化原则.mp4 │ │ 6_MySQL运维常见错误part1.mp4 │ │ 7_MySQL运维常见错误part2.mp4 │ │ ERROR1040_1917970.1.pdf │ │ ERROR1062_1593526.1.pdf ...

    MySQL执行delete误删除数据恢复

    当误执行了 DELETE 命令删除了数据后,可以考虑以下方法进行数据恢复: 立即停止对数据库的写入操作:一旦发现误删,应立即停止对数据库的写入操作,以免新的数据覆盖被删除的数据。 使用备份:如果你有数据库备份...

    mysql 源码分析+mysql-5.0.18的源码

    主要介绍Mysql主要的调用流程,将从代码的角度来看一个从用户发出的"select * from test" SQL命令在服务器内部是如何被执行的。从我个人的经验来看,阅读理解大规模项目的代码最重要的两个方面,一是了解主要的数据...

    分析MySQL中优化distinct的技巧

    通过查看执行计划,也为全索引扫描,sql在执行的时候,会对整个服务器带来抖动; root@db 09:00:12>select count(distinct nick) from user_access; +———————-+ | count(distinct nick) | +———————-+...

    sql和MySQL的语句执行顺序分析

    sql和mysql执行顺序,发现内部机制是一样的。最大区别是在别名的引用上。 一、sql执行顺序 (1)from (2) on (3) join (4) where (5)group by(开始使用select中的别名,后面的语句中都可以使用) (6) avg,...

    MySQL执行状态的查看与分析

    今天小编就为大家分享一篇关于MySQL执行状态的查看与分析,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    MySQL自整理超全精华版面试八股文

    存储引擎 MyISAM和InnoDB的区别 一条SQL语句在ySQL中如何被执行的? 索引 什么是索引 索引的优缺点 MySQL的索引有哪些? B树和B+树有什么异同?...执行计划分析explain SQL优化 数据库表结构设计优化 大表优化

Global site tag (gtag.js) - Google Analytics