• 8.8.4 Estimating Query Performance 评估查询性能


    8.8 Understanding the Query Execution Plan 了解执行计划

    8.8.1 Optimizing Queries with EXPLAIN 使用EXPAIN 优化查询

    8.8.2 EXPLAIN Output Format EXPLAIN 输出格式

    8.8.3 EXPLAIN EXTENDED Output Format EXPLAIN 扩展输出格式

    8.8.4 Estimating Query Performance 评估查询性能

    依赖你的表,列,索引和WHERE 子句条件的详细信息,MySQL 优化器考虑许多技术来有效的执行

    一个SQL查询。 一个query 在一个巨大的表上执行不需要读取所有的记录,

    一个关联涉及多个表可以可以执行不需要比较每个记录的组合。

    优化器选择来执行最有效的查询被称为 “query execution plan”,

    也被称为 EXPLAIN plan. 你的目的是识别EXPLAIN PLAN 的样子,表明一个查询是被很好的优化的,

    学习SQL语法,和索引技术来改善计划如果看到一些低效的操作。

    8.8.1 Optimizing Queries with EXPLAIN

    EXPLAIN 语句可以用得到MySQL如何执行一个语句的信息:

    在MySQL 5.6.3中,允许执行计划用于EXPLAIN SELECT, DELETE, INSERT, REPLACE, and UPDATE.

    在MySQL 5.6.33之前,只能用于SELECT 语句。

    当EXPLAIN 是用于一个explainable statement,MySQL 显示信息从优化器关于语句执行计划。

    也就是说,MySQL 执行它是如何处理语句的,那包括关于表如何关联和顺序的信息。

    For information about using EXPLAIN to obtain execution plan information, see Section 8.8.2, “EXPLAIN Output

    Format”.

    EXPLAIN EXTENDED 可以用于得到额外的执行计划信息 See Section 8.8.3, “EXPLAIN EXTENDED Output Format”.

    EXPLAIN PARTITIONS 是用于查询涉及分区表

    MySQL 5.6.3,FORMAT 选项可以用于选择输出格式

    TRADITIONAL 是以表格格式输出, 这是默认的 如果没有FORMAT 选择。

    JSON 格式显示JSON格式信息。

    在EXPLAIN 的帮助下,你可以看到哪里你应该加索引到表,以便语句可以通过使用索引来快速找到记录。

    你可以使用EXPLAIN 来检查是否优化关联表在一个优化的顺序。

    给优化器一个提示, 来使用关联顺序相应的顺序在SELECT 语句里

    如果你有一个问题,没有使用索引当你相信它们应该走索引, 运行ANALYZE TABLE来更新表的统计信息,

    比如cardinality of keys, 它们会影响优化器的选择

  • 相关阅读:
    Ural_1018. Binary Apple Tree(树形DP)
    2011 Asia Shanghai Regional Contest Problem A
    Ural_1012. Kbased Numbers. Version 2(dp)
    HDU_1524 A Chess Game (sg函数)
    HDU_1760 A New Tetris Game(dfs + 博弈)
    POJ_2023 Choose Your Own Adventure(DFS)
    POJ_3267 The Cow Lexicon(DP)
    Qt 的QString类的使用
    用QFileSystemModel和Listview做的简易图片浏览
    Qt 对文件的操作
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13351254.html
Copyright © 2020-2023  润新知