当前位置: 首页 > 面试题库 >

MySQL解释查询理解

楚勇
2023-03-14
问题内容

我已经阅读了一些博客和一些与优化有关的文章,介绍了如何优化查询。我读到我需要使用索引,并确保使用良好的关系数据库架构正确设置了所有主键和外键。

现在,我有一个查询需要优化,并且可以在上获得此查询EXPLAIN

Using where; Using temporary; Using filesort

我正在使用MySQL 5.5

我知道我正在使用WHERE但不使用我的临时表或文件排序吗?这是什么意思?


问题答案:

使用临时意味着MySQL需要使用一些临时表来存储执行查询时计算出的中间数据。

使用文件排序是一种排序算法,其中MySQL无法使用索引进行排序,因此无法在内存中进行完整的排序。而是将排序分为较小的块,然后合并结果以获取最终的排序数据。

请参考http://dev.mysql.com/doc/refman/5.0/en/explain-
output.html

我认为您可能正在使用ORDER BY加上一些派生表或子查询。如果您可以粘贴查询和相关的表/索引信息以及EXPLAIN输出,那就太好了。



 类似资料:
  • 本文向大家介绍MySQL EXPLAIN关键字是执行查询还是只是解释查询?,包括了MySQL EXPLAIN关键字是执行查询还是只是解释查询?的使用技巧和注意事项,需要的朋友参考一下 EXPLAIN关键字告诉MySQL如何执行查询。让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 这将产生以下输出- 这是使用MySQL EXPLAIN的查询- 这将

  • 如何理解这条Mysql模糊查询语句 我不太理解这两种写法字符串的拼接结果是什么

  • 本文向大家介绍详解MySql基本查询、连接查询、子查询、正则表达查询,包括了详解MySql基本查询、连接查询、子查询、正则表达查询的使用技巧和注意事项,需要的朋友参考一下 查询数据指从数据库中获取所需要的数据。查询数据是数据库操作中最常用,也是最重要的操作。用户可以根据自己对数据的需求,使用不同的查询方式。通过不同的查询方式,可以获得不同的数据。MySQL中是使用SELECT语句来查询数据的。在这

  • 本文向大家介绍详解MySQL子查询(嵌套查询)、联结表、组合查询,包括了详解MySQL子查询(嵌套查询)、联结表、组合查询的使用技巧和注意事项,需要的朋友参考一下 一、子查询 MySQL 4.1版本及以上支持子查询 子查询:嵌套在其他查询中的查询。 子查询的作用: 1、进行过滤: 实例1:检索订购物品TNT2的所有客户的ID = + 一般,在WHERE子句中对于能嵌套的子查询的数目没有限制,不过在

  • 本文向大家介绍MySQL多表查询实例详解【链接查询、子查询等】,包括了MySQL多表查询实例详解【链接查询、子查询等】的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了MySQL多表查询。分享给大家供大家参考,具体如下: 准备工作:准备两张表,部门表(department)、员工表(employee) ps:观察两张表,发现department表中id=203部门在employee中没有对应

  • 我已经阅读了很多资料,但对于hibernate二级缓存,我无法消除一个疑问。 1) 比方说,我有一个返回1000条记录的查询。(例如,从年龄 2) 场景2。假设我执行查询(例如,从年龄