Extra表示附加信息,常见的有如下几种(也按查询效率从高到低排列):

Using index

表示使用索引,如果只有 Using index,说明他没有查询到数据表,只用索引表就完成了这个查询,这个叫覆盖索引。如果同时出现Using where,代表使用索引来查找读取记录, 也是可以用到索引的,但是需要查询到数据表。

using index & using where

查找使用了索引,但是需要的数据都在索引列中能找到,所以不需要回表查询数据

Using index condition

在5.6版本后加入的新特性(Index Condition Pushdown),会先条件过滤索引,过滤完索引后找到所有符合索引条件的数据行,随后用 WHERE 子句中的其他条件去过滤这些数据行,也就是说需要回表查询

Using where

表示优化器需要通过索引回表查询数据

Using filesort

Using filesort表示在索引之外,需要额外进行外部的排序动作。导致该问题的原因一般和order by有者直接关系,一般可以通过合适的索引来减少或者避免。

示例

explain SELECT * FROM table_item WHERE user_id = 2 ORDER BY item_id LIMIT 0, 5

user_id 和 item_id 分别建立一个索引,对此语句MySQL选择了 user_id索引,那么 item_id 的索引没有起到任何用处。当排序时记录数较多,内存中的排序 buffer满了,只能 Using filesort 进行外部排序。

mysql extra什么意思_mysql explain extra理解相关推荐

  1. mysql哪些优化手段_mysql explain 及常见优化手段

    在工作中如果遇到慢sql通常都可以用explain进行解析. 先列一下各个列名以及含义 列名 描述 id 在一个大的查询中每一个查询关键字都对应一个id select type select关键字对应 ...

  2. mysql 执行计划 代价_mysql explain执行计划详解

    1).id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询. 2).select_type列常见的有: A:simple:表 ...

  3. mysql不同锁解释_MySQL 各种锁理解总结

    该文章举例都是基于 InnoDB 可重复读(RR)隔离级别的,mysql 版本 8.0 根据加锁的范围,MySQL 里面的锁大致可以分成全局锁.表级锁和行锁三类 全局锁 全局锁就是对整个数据库实例加锁 ...

  4. MySQL EXPLAIN Extra列的信息

    2019独角兽企业重金招聘Python工程师标准>>> MySQL EXPLAIN Extra列的信息 这一列包含的是不适合在其他列显示的额外信息. Using where 这意味 ...

  5. mysql查看执行计划_MySql中如何使用 explain 查询 SQL 的执行计划

    explain命令是查看查询优化器如何决定执行查询的主要方法. 这个功能有局限性,并不总会说出真相,但它的输出是可以获取的最好信息,值得花时间去了解,因为可以学习到查询是如何执行的. 1.什么是MyS ...

  6. 【mysql系列】细谈explain执行计划之“谜”

    目录 理论Part 概念 实践Part id select_type table type possible_keys key key_len ref rows filtered Extra 总结 聊 ...

  7. mysql索引详解_MySQL索引详解

    导读:大家都知道,一个MySQL数据库能够储存大量的数据,如果要查找那一个数据,就得费好大劲从一大堆的数据中找到,即费时间又费力气,这时,索引的出现就大大减轻了数据库管理员的工作.本文介绍了数据库索引 ...

  8. mysql 执行计划 视频_MySQL执行计划的讲解

    最近同事在执行线上执行一条MySQL的查询语句,数据的话在9000条左右,但使用左连接的时候查询速度大概在15秒左右~这速度确实是无法接受的~ 经过简单的修改,变为内连接的话,执行速度不到1秒. 下面 ...

  9. Mysql——索引底层数据结构与Explain用法

    Mysql--索引底层数据结构与Explain用法 一.索引底层数据结构 1.Mysql不同引擎对应的数据结构 2.B+Tree数据结构 2.1. 二叉树 (Binary Search Trees) ...

最新文章

  1. 浅谈WPF的VisualBrush
  2. java 默认焦点_按钮活动焦点阴影默认问题
  3. 2017广东工业大学程序设计竞赛决赛(官方题解)
  4. 项目开发总结报告(GB8567——88)
  5. 三年经验前端社招——丰巢科技
  6. 计算机应用基础形考作业3Excel,国家开放大学《计算机应用基础》考试与答案形考任务模块3 模块3 Excel 电子表格系统—客观题答案(2020年整理).pptx...
  7. mysql 源码 缓存_MySQL源码:MYSQL存储过程/函数的分析原理及缓存机制
  8. python如何把数字转化成字符_python 定义一个dictpython如何将数字转化为字符串
  9. iOS 应用启动慢的原因找到了!
  10. JS总结 循环 退出循环 函数
  11. 笔记-神经网络滑模控制设计方法
  12. 安徽庐江:副副春联送祝福 浓浓墨香迎新春
  13. pandas excel 数据随机打乱
  14. 【jQuery】jQuery对象与prevObject
  15. linux网卡配置没生效,linux上网络配置不生效的解决办法
  16. 服务器上设置密码策略不能修改,Window Server 2008 R2 在Active Directory域中不能更改服务器密码策略...
  17. 上市公司环境信息披露合集-上市公司环保补助金额、环保税等三大维度指标(2003-2020年)
  18. Python编程思想(18):哇!原来Python参数还可以这样用
  19. 宿舍管理系统的设计与实现/学生宿舍管理系统
  20. CaEGCN: Cross-Attention Fusion based Enhanced Graph Convolutional Network for Clustering 2021

热门文章

  1. python,Day1,基础1
  2. 联想笔记本触摸板关闭方法
  3. ISMC发布世界最小的的多轴微型伺服系统
  4. 2018考研英语暑期怎么复习?老师只建议你大量阅读
  5. 导航上显示某个地点已关闭什么意思_牢记!想要玩好iPhone手机,6个关闭、4个开启...
  6. 纯HTML,CSS实现点击图片,显示内容
  7. Legacy和UEFI,MBR和GPT的区别
  8. 答疑|PLC程序可以申请软件著作权登记么?
  9. 7.3联盟最多的服务器,魔兽世界人口普查:联盟人类增多
  10. A,B,C类网络子网掩码