MySQL查看SQL执行计划的方法是什么?

在MySQL中,有几种方法可以查看SQL查询的执行计划:

  1. 使用EXPLAIN关键字
    语法:
EXPLAIN SELECT ... 

在SELECT语句前加上EXPLAIN关键字。
它会返回SQL执行计划的相关信息。
示例:

EXPLAIN SELECT * FROM table WHERE condition;
  1. 使用EXPLAIN EXTENDED
    语法:
EXPLAIN EXTENDED SELECT ...

会返回更详细的执行计划。

  1. 使用PROFILE关键字
    语法:
PROFILE SELECT ... 

它会在运行SQL的同时收集相关的统计信息。
完成后返回执行计划。

  1. 查看慢查询日志
    MySQL会记录长时间运行的SQL查询,其中包含执行计划。
    可通过查询慢查询日志查看。
  2. 使用show warnings
    语法:
SHOW WARNINGS;

在执行完SELECT语句后,使用SHOW WARNINGS可以查看执行计划。
以上这些方法都可以用来查看MySQL的SQL执行计划。

通过分析执行计划,我们可以查看:

  • MySQL是否选择了正确的索引
  • 能否通过更改索引或SQL优化SQL
  • 关系如何联系等