# EXPLAIN ANALYZE 的输出格式

+ EXPLAIN ANALYZE 会执行对应的 SQL 语句, 记录其运行的信息, 并且和执行计划一起返回

![left](./student-guide/diagram/17-EXPLAIN-output-describing-01-01.png)

-------------------------------------------------------------
使用 EXPLAIN ANALYZE 查看执行计划

actRows	算子实际输出的数据条数。

execution info	算子的实际执行信息。time 表示从进入算子到离开算子的全部 wall time，包括所有子算子操作的全部执行时间。如果该算子被父算子多次调用 (loops)，这个时间就是累积的时间。loops 是当前算子被父算子调用的次数。

memory	算子占用内存空间的大小。

disk	算子占用磁盘空间的大小。

与 EXPLAIN 不同，EXPLAIN ANALYZE 会执行对应的 SQL 语句，记录其运行的信息，并且和执行计划一起返回。我们可以将 EXPLAIN ANALYZE 视为 EXPLAIN 的扩展。
对比 EXPLAIN，EXPLAIN ANALYZE 会返回更多的信息：
  - actRows 列代表算子实际输出的数据条数，在查看执行计划时，如果 actRows 与 estRows 列相差较多，多数情况下，说明了统计信息是存在问题的，我们可以考虑重新收集统计信息。
  - executionInfo 列是算子的实际执行信息。比如说 wall time 代表了算子的全部执行时间。而 loops 代表算子调用的次数。那么 wall time * loops 就可以理解为该算子的累计时间。
  - Memory 代表了算子占用的内存空间。
  - Disk 代表了算子占用的磁盘空间。
