iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >mysql中执行计划索引的示例分析
  • 964
分享到

mysql中执行计划索引的示例分析

2024-04-02 19:04:59 964人浏览 泡泡鱼
摘要

小编给大家分享一下Mysql中执行计划索引的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!首先执行计划包含的信息:id,

小编给大家分享一下Mysql中执行计划索引的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

首先执行计划包含的信息:

id, select_type, table, partitions, type, possible_keys, key, key_len, ref, rows, filtered, Extra

id

select 查询的序列号,包含一组数字,表示查询中执行select子句或操作表的顺序 

存在三种情况:

a)  id相同,表示表(table字段)执行顺序从上到上

b)  id不同,如果是子查询,id越大表执行的优先级越高

c)  id有相同也有不同,id相同,可认为是同一组,从上至下顺序执行,所有组中id越大执行优先级越高

select_type

主要有六种 

SIMPLE              简单查询,不包括自查询及uNIOn

PRIMAY              查询中包含任何复杂的子部分的最外层查询的标记

SUBQUERY       在select或where子句列表中包含自查询

DERIVED           在from列表中包括的子查询标记为derived(衍生)mysql递归查询这些子查询并放在临时表里

UNioN               如果第二个select出现在union之后则标记为union,

                            如果union包含在from子句的子查询中,外层的select标记为derived

UNION RESULT union结果的合并

table

对应的表

type

访问类型 

效率 system>const>eq_ref>ref>fulltext>ref_or_null>index_merge>unique_subquery>index_subquery>range>index>ALL

主要使用到的:system>const>eq_ref>ref>range>index>ALL 

system  表只有一行记录(系统表)

const    索引常量

eq_ref  唯一性索引扫描

ref        非唯一性索引扫描

range  范围索引扫描 (索引列使用 between in等范围限定) 

index  全索引扫描 

ALL    全表扫描

possible_keys

查询涉及到的字段上存在的索引一个或多个(可能用到的,但不一定会使用)

keys

实际使用的索引 

key_len

索引使用的字节数,可通过该列计算查询中使用索引的长度,同样查询结果条件下(不损失精度的条件下),长度越小越好

显示的值为索引的最大可能长度,非实际长度,即key_len通过表定义计算所得非表内检索值

ref

显示索引用到的列(或用到的是常量) 例 db.table.col ,const

rows

根据表统计信息及索引选用情况,大致估算出找到所需的记录需要读取的行数

Extra

其他信息

1、Using filesort  

使用外部的索引排序(文件排序),而不是按照索引的排序进行读取 

例如使用复合索引的表,查询排序时只使用了复合索引的其中一列,可能会造成文件排序。需尽量避免的情况

2、Using temporary  

使用了临时表保存中间结果,常见于order by 及group by 

消耗资源,需避免的情况

order by 及group by 语句中使用覆盖索引

3、Using index

使用的覆盖索引,避免访问表的数据行 

同时出现using where,表示索引用来查询索引键值的查找(如查询结果中的列被索引列覆盖)

如果没有出现using where,表示索引直接用来读取数据,不执行查找动作

*覆盖索引(Covering index)

select 的数据列只从索引中获得,不必查找数据行 

4、Using where

5、Using join buffer

使用了连接缓存

6、Impossible where 

where 子句结果false

7、select table optimized away 

在没有group by子句的情况下,基于索引优化MIN/MAX操作或者对于MyISAM 存储引擎优化COUNT(*) 操作,不必等到执行阶段再进行计算,查询执行接话生成阶段即可完成优化

8、distinct

优化distinct操作,在找到第一匹配的元组后即停止找同样值的动作

以上是“mysql中执行计划索引的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网数据库频道!

您可能感兴趣的文档:

--结束END--

本文标题: mysql中执行计划索引的示例分析

本文链接: https://www.lsjlt.com/news/62550.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mysql中执行计划索引的示例分析
    小编给大家分享一下mysql中执行计划索引的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!首先执行计划包含的信息:id,...
    99+
    2024-04-02
  • MySQL执行计划的示例分析
    这篇文章主要介绍了MySQL执行计划的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。执行计划是什么执行计划,简单的来说,是SQL在数...
    99+
    2024-04-02
  • mysql中执行计划id为空的示例分析
    这篇文章将为大家详细讲解有关mysql中执行计划id为空的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。简介UNION 操作符用于合并两个或多个 SELE...
    99+
    2024-04-02
  • MySQL因数据类型转换导致执行计划使用低效索引的示例分析
    小编给大家分享一下MySQL因数据类型转换导致执行计划使用低效索引的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!查看表的索引情况mysql> show ...
    99+
    2024-04-02
  • Mysql中Performance_schema SQL执行统计的示例分析
    这篇文章主要为大家展示了“Mysql中Performance_schema SQL执行统计的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Mysql中P...
    99+
    2024-04-02
  • MySQL中Explain执行计划的案例
    这篇文章给大家分享的是有关MySQL中Explain执行计划的案例的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。1. Explain 简述Explain 语句可以查看 MySQL...
    99+
    2024-04-02
  • MySQL索引的示例分析
    这篇文章给大家分享的是有关MySQL索引的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言我们知道,索引的选择是优化器阶段的工作,但是优化器并不是万能的,它有可能选错所...
    99+
    2024-04-02
  • MySQL 索引分类中单列索引的示例分析
    本篇文章为大家展示了MySQL 索引分类中单列索引的示例分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 一个已分区的表不支持全文本...
    99+
    2024-04-02
  • MySQL中执行计划explain命令示例详解
    前言 explain命令是查看查询优化器如何决定执行查询的主要方法。 这个功能有局限性,并不总会说出真相,但它的输出是可以获取的最好信息,值得花时间去了解,因为可以学习到查询是如何执行的。 调用EXPLA...
    99+
    2024-04-02
  • SqlServer执行计划及Sql查询优化的示例分析
    SqlServer执行计划及Sql查询优化的示例分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。谈到优化就必然要涉及索引,就像要讲锁必然要说...
    99+
    2024-04-02
  • MySQL中event计划任务的示例分析
    这篇文章给大家分享的是有关MySQL中event计划任务的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、查看event是否开启show variables like ...
    99+
    2024-04-02
  • MySQL执行计划解析(四)
    本文是对于MySQL执行计划的解析,主要解释了MySQL执行计划中的各个参数及含义。  十三、Extra 产生的值 存在六种情况: Using filesort、Using tempor...
    99+
    2024-04-02
  • MySQL执行计划explain的key_len解析
    作者 :沃趣科技高级数据库专家 邱文辉  ...
    99+
    2024-04-02
  • MySQL索引结构的示例分析
    这篇文章将为大家详细讲解有关MySQL索引结构的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。简介在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,...
    99+
    2023-06-29
  • MySQL中单列索引和多列索引的示例分析
    这篇文章主要为大家展示了“MySQL中单列索引和多列索引的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“MySQL中单列索引和多列索引的示例分析”这篇文...
    99+
    2024-04-02
  • MySQL中索引与优化的示例分析
    这篇文章主要介绍MySQL中索引与优化的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!索引与优化1、选择索引的数据类型MySQL支持很多数据类型,选择合适的数据类型存储数据对...
    99+
    2024-04-02
  • MySQL中Innodb存储引擎索引的示例分析
    这篇文章主要为大家展示了“MySQL中Innodb存储引擎索引的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“MySQL中Innodb存储引擎索引的示例...
    99+
    2024-04-02
  • DB2执行计划怎么分析
    这篇文章给大家介绍DB2执行计划怎么分析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。分析一个长时间运行SQL的执行计划,怀疑优化器的估计值和实际值出入很大,造成执行计划不准确,于是采...
    99+
    2024-04-02
  • Mysql覆盖索引的示例分析
    小编给大家分享一下Mysql覆盖索引的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!概念如果索引包含所有满足查询需要的数...
    99+
    2024-04-02
  • MySql索引失效的示例分析
    这篇文章主要介绍了MySql索引失效的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 1、使用MySq...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作