查询计划
- 过滤器
- 索引条件
- 过滤器删除的行数
- 索引出的不满足条件的行数
- 扫描方向
- 堆表访问行数
- 位图堆扫描精确块数
- 位图堆扫描有损块数
- 位图扫描过滤条件
- 哈希条件
- 内行唯一
- 连接过滤器
- 连接类型
- 连接过滤器删除行数
- 合并条件
- 部分模式
- 聚合策略
- 哈希批次
- 哈希桶数
- 原始哈希批次
- 原始哈希桶数
- 内存使用峰值
- 集合操作
- 排序方式
- 排序键
- 排序空间类型
- 排序使用空间
- 启动工作者数
- 计划工作者数
- 单次执行计划
PostgreSQL为每个收到的查询产生一个查询计划。查询计划的结构是一个计划结点的树。最底层的结点是扫描结点:它们从表中返回未经处理的行。不同的表访问模式有不同的扫描结点类型:顺序扫描、索引扫描、位图索引扫描。也还有不是表的行来源,例如VALUES
子句和FROM
中返回集合的函数,它们有自己的结点类型。如果查询需要连接、聚集、排序、或者在未经处理的行上的其它操作,那么就会在扫描结点之上有其它额外的结点来执行这些操作。并且,做这些操作通常都有多种方法,因此在这些位置也有可能出现不同的结点类型。