广告
返回顶部
首页 > 资讯 > 数据库 >MySQL 中的查询统计
  • 110
分享到

MySQL 中的查询统计

2023-10-22 09:10:24 110人浏览 薄情痞子
摘要

为执行的查询收集的重要统计信息,包括时间、临时表、索引、联接等,都收集在“查询统计 sql 编辑器结果”选项卡中(请参阅以下两图)。 要求 启用查询,并收集性能架构统计信息。 perfORMance_schema 已启用语句检测。 SQL

为执行的查询收集的重要统计信息,包括时间、临时表、索引、联接等,都收集在“查询统计 sql 编辑器结果”选项卡中(请参阅以下两图)。

要求

  • 启用查询,并收集性能架构统计信息。

  • perfORMance_schema 已启用语句检测。

SQL 编辑器:查询统计

视觉解释计划

通过利用增强型 JSON 格式中包含的附加数据,可视化解释功能可创建并呈现 Mysql EXPLaiN 语句的可视化描述。所有 EXPLAIN 格式,包括标准格式、原始扩展 jsON 和可视化查询计划,都可以在 mysql Workbench 中用于执行查询。

直观地演示使用

在 SQL 编辑器中执行查询,然后从查询结果菜单中选择“执行过程”以接收执行计划的直观说明。除了默认的可视化解释视图之外,执行计划还包含一个表格解释视图,类似于您在 MySQL 客户端中运行 EXPLAIN 时看到的内容。有关 MySQL 如何执行语句的详细信息,请参阅使用 EXPLAIN 优化查询。

视觉解释约定

视觉解释图应该从下到上、从左到右阅读。下面的图表示例中给出了用于表示视觉解释计划的各种元素的图形、文本和信息约定的概述。要了解更多详细信息,请参阅 -

  • 图形标准

  • 信息和文本约定

第一张图的视觉解释图提供了以下查询的视觉描述。

select  * FROM employee_table

视觉解释示例

图形约定

  • 标准盒子:桌子

  • 圆角框:GROUP 和 SORT 等操作

  • 框架框:子查询

  • 钻石:连接

文本和信息约定

  • 框下方的标准文本:表(或别名)名称

  • 框下方的粗体文本:使用的键/索引

  • 方框右上角的数字:过滤后表格中使用的行数

  • 方框左上角的数字:访问该表的相对成本(需要 MySQL 5.7 或更高版本)

  • 嵌套循环(或散列连接)菱形右侧的数字:JOIN 生成的行数

  • 菱形上方的数字:JOIN 的相对成本(需要 MySQL 5.7 或更高版本)

下表显示了视觉解释图中使用的相关颜色和描述。有关成本估算的详细信息,请参阅优化器成本模型。

视觉解释图信息

系统名称

颜色

可视化图表上的文本

工具提示相关信息

系统

蓝色

单行:系统常量

成本非常低

常量

蓝色

单行:常量

成本非常低

EQ_REF

绿色

唯一键查找

低成本——优化器能够找到可用于检索所需记录的索引。速度很快,因为索引搜索直接指向包含所有行数据的页面

参考

绿色

非唯一键查找

低-中 -- 如果匹配行数较少,则为低;随着行数的增加而更高

全文

黄色

全文索引搜索

专门的全文搜索。低——针对这种专门的搜索要求

REF_OR_NULL

绿色

按键查找 + 获取 NULL 值

低-中——如果匹配的行数很少;随着行数的增加而更高

INDEX_MERGE

绿色

索引合并

中——在查询中寻找更好的索引选择以提高性能

UNIQUE_SUBQUERY

橙色

子查询表中的唯一键查找

低 -- 用于高效的子查询处理

INDEX_SUBQUERY

橙色

子查询表中的非唯一键查找

低 -- 用于高效的子查询处理

范围

橙色

索引范围扫描

中 -- 部分索引扫描

索引

红色

完整索引扫描

高——特别是对于大索引

全部

红色

全表扫描

非常高 - 对于大型表来说成本非常高,但对于小型表影响较小。找不到该表的可用索引,这迫使优化器搜索每一行。这也可能意味着搜索范围太广,索引将毫无用处。

未知

黑色

未知

注意:这是默认值,以防无法确定匹配

结论

在本文中,我们学习了如何在 MySQL Workbench 中获取查询统计信息以及它同时具有哪些不同特征。

您可能感兴趣的文档:

--结束END--

本文标题: MySQL 中的查询统计

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

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

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

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

下载Word文档
猜你喜欢
  • MySQL 中的查询统计
    为执行的查询收集的重要统计信息,包括时间、临时表、索引、联接等,都收集在“查询统计 SQL 编辑器结果”选项卡中(请参阅以下两图)。 要求 启用查询,并收集性能架构统计信息。 performance_schema 已启用语句检测。 SQL ...
    99+
    2023-10-22
  • mysql查询日志计数统计
    分析统计MySQL general日志 找出查询次数最多的SQL当我们需要优化MySQL查询时,第一想到的是开启慢日志,慢日志可以看到执行消耗超过一定时间的SQL语句和未使用索引的SQL。但如果我们想分析所...
    99+
    2022-10-18
  • Mysql的分组查询和统计计算
    1.聚合函数 聚合函数实现数据的统计计算,用于计算表中的数据,返回单个计算结果。聚合函数包括COUNT、SUM、AVG、MAX、MIN等函数,下面分别介绍。 (1)COUNT函数 COUNT函数用于计算组中满足条件的行数或总行数。 语法格式...
    99+
    2023-08-31
    sql 数据库
  • 如何统计MySQL查询时间
    本文主要给大家简单讲讲如何统计MySQL查询时间,相关专业术语大家可以上网查查或者找一些相关书籍补充一下,这里就不涉猎了,我们就直奔主题吧,希望如何统计MySQL查询时间这篇文章可以给大家带来一些实际帮助。...
    99+
    2022-10-18
  • mysql如何统计查询结果
    本篇内容介绍了“mysql如何统计查询结果”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2022-10-19
  • mysql如何查询并统计数量
    这篇文章主要介绍mysql如何查询并统计数量,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 在mysql中,可以使用SELECT语句查询数据,并利...
    99+
    2022-10-19
  • Mysql 查询统计最近12个月的数据
    包括当月: SELECTt1.yf AS 'month',count( t2.uuid ) AS totalFROM(SELECTDATE_FORMAT(( CURDATE()), '%Y-%m' ) AS 'yf' UNI...
    99+
    2023-10-12
    mysql 数据库 sql
  • mySql关于统计数量的SQL查询操作
    我就废话不多说了,大家还是直接看代码吧~ select project_no, sum(case when device_state=0 then 1 else 0 end)as offTotal , ...
    99+
    2022-05-26
    mySql 统计数量 SQL查询
  • MySQL统计信息查询慢问题分析
    起因 在MySQL服务器运行mysqld_exporter后,发现数据库的中活跃连接数暴增,而且都是来自于mysqld_exporter的慢查询,语句如下: SELECT T...
    99+
    2022-10-18
  • Thinkphp统计查询数量
    ThinkPHP是一个开源的PHP开发框架,可以用来快速开发web应用。在ThinkPHP中,可以使用模型类来查询数据库。如果要统计查询数量,可以使用count方法来统计符合条件的记录数。 示例代码: $count = M('tab...
    99+
    2023-09-01
    php 开发语言
  • mysql使用 union all查询统计总数量
    select sum(a.b) as num from (select count() as b from table_1 union all select coun...
    99+
    2022-10-18
  • MySQL巧用sum、case和when优化统计查询
    最近在公司做项目,涉及到开发统计报表相关的任务,由于数据量相对较多,之前写的查询语句查询五十万条数据大概需要十秒左右的样子,后来经过老大的指点利用sum,case...when......
    99+
    2022-11-11
  • 【Mysql】MySQL查询计划key_len全知道
    本文首先介绍了MySQL的查询计划中ken_len的含义;然后介绍了key_len的计算方法;最后通过一个伪造的例子,来说明如何通过key_len来查看联合索引有多少列被使用。 key_len的含...
    99+
    2022-10-18
  • mysql 根据date做年,月,日分组统计查询
    使用 YEAR(), MONTH(), DAY() 来获取年月日 SELECT YEAR(application_date) as years, count(1) FROM patent GROUP BY YEA...
    99+
    2015-08-27
    mysql 根据date做年,月,日分组统计查询
  • 怎么在MySQL中使用sum、case和when优化统计查询
    怎么在MySQL中使用sum、case和when优化统计查询?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。表结构如下:CREATE TABLE&nbs...
    99+
    2023-06-14
  • mongodb批量查询库中表的统计信息
    在mongodb中,查看一个表的统计信息一般用: db.t.stats() 主要信息有: "ns" : "gqtest.t", "count" : 40001, ###行数 "size" : ...
    99+
    2022-10-18
  • mysql数据库如何实现连续日期的统计查询
    我们经常会用到按日期汇总某些数据,一般我们使用group by + 统计函数来进行查询,得到的结果如下图所示: 在实际应用场景中,并不是每个时间段都有数据,所以我们汇总出来的结果中,日期是不连续的。...
    99+
    2023-09-03
    mysql
  • Mysql---子查询的三种查询方式( 表子查询,条件子查询,列中子查询)
    mysql子查询 子查询分为: 列中子查询 单列单行表子查询 必须有别名条件子查询 单行单列 多行单列 下列示例表结构: grade表: result表: student表: subject表:...
    99+
    2023-09-04
    mysql sql 数据库
  • MySQL中连接查询和子查询的问题
    目录多表连接的基本语法交叉连接和笛卡尔积现象交叉连接笛卡尔积现象内连接外连接左外连接右外连接全外连接子查询多表连接的基本语法 多表连接,就是将几张表拼接为一张表,然后进行查询 s...
    99+
    2022-11-12
  • SQLserver 中怎么实现分组统计查询
    SQLserver 中怎么实现分组统计查询,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。设置AccessCount字段可以根据需求在特定的...
    99+
    2022-10-18
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作