如何找到PostgreSQL中所有查询计划算子的官方列表?
PostgreSQL 查询计划算子汇总及官方文档指引
PostgreSQL官方没有单独的「全算子列表」页面,但所有算子的说明都分散在执行计划相关的核心文档章节里。以下是常见算子分类汇总,以及对应的官方文档查找路径:
扫描类算子
Seq Scan:全表顺序扫描,对应官方文档中「查询计划」章节的表扫描模块Index Scan:基于索引的扫描(需回表获取完整数据)Index Only Scan:仅索引扫描(无需回表,满足覆盖索引条件)Bitmap Heap Scan:结合位图索引的堆扫描,通常搭配Bitmap Index Scan使用Tid Scan:通过元组ID直接定位数据的扫描
连接类算子
Nested Loops:嵌套循环连接,适合小数据集或有高效过滤索引的场景Hash Join:哈希连接,适合中等至大规模数据集的等值连接Merge Join:归并连接,适合已排序的数据集连接(如已建排序索引或前序算子输出已排序)
聚合与排序类算子
Aggregate:基础聚合计算(如SUM、COUNT、AVG)GroupAggregate:分组聚合,先按分组键排序/分组再执行聚合HashAggregate:基于哈希的聚合,无需预排序,适合无排序需求的分组场景Sort:显式排序,对应ORDER BY子句或连接/聚合要求的排序操作
其他常用算子
Limit:限制返回结果行数Offset:跳过指定行数后返回结果Subquery Scan:扫描子查询生成的数据集Function Scan:调用函数生成数据集的扫描(如generate_series())Values Scan:扫描VALUES子句生成的静态数据集
官方文档查找提示
在PostgreSQL官方文档的「执行计划」章节(隶属于「SQL查询优化」板块)中,可找到每个算子的详细工作原理、适用场景及性能分析。执行EXPLAIN ANALYZE <your_query>得到计划后,对照该章节的对应内容,即可快速理解计划逻辑。
内容的提问来源于stack exchange,提问作者TaniKova
相关产品推荐
相关产品推荐

