pgsql explain 怎么看
时间: 2023-11-14 08:24:26 浏览: 144
说明:将postgresql转换为图形
在 PostgreSQL 中,`EXPLAIN`命令可以帮助我们分析查询语句的执行计划,从而帮助我们优化查询语句和提高查询效率。
`EXPLAIN`命令会生成一个执行计划,它显示了 PostgreSQL 如何执行查询语句。执行计划是一个树形结构,每个节点代表一个操作。可以通过分析执行计划来确定查询语句的瓶颈,进而进行优化。
执行 `EXPLAIN` 命令时,可以在查询语句之前加上 `EXPLAIN` 关键字,也可以在 `psql` 命令行中使用 `\explain` 命令。例如:
```sql
EXPLAIN SELECT * FROM mytable WHERE id = 1;
```
执行完成后,会输出一个执行计划,例如:
```
QUERY PLAN
-----------------------------------------------------------
Seq Scan on mytable (cost=0.00..1.13 rows=1 width=4)
Filter: (id = 1)
```
执行计划中的每一行都表示一个节点,节点之间的缩进表示它们的层级关系。每个节点都包含了以下信息:
- `Node Type`:节点类型,例如 `Seq Scan` 表示顺序扫描。
- `Relation Name`:关系名称,即表名。
- `Alias`:别名,如果查询中使用了 AS 关键字指定了别名,则会显示在这里。
- `Startup Cost`:节点启动时的成本估计。
- `Total Cost`:节点执行完成时的成本估计。
- `Plan Rows`:节点估计输出的行数。
- `Width`:节点估计输出的行的宽度。
通过分析执行计划,可以找到查询语句的瓶颈,例如哪些节点的成本很高,哪些节点输出的行数很多等等。可以根据这些信息来优化查询语句,例如添加索引、改变查询方式等等。
阅读全文