类型: integer
默认: 8
最低限度: 1
最大: 2147483647
上下文: user
重新开始: false

如果得出的列表中不超过这么多项,那么规划器将把显式JOIN(除了FULL JOIN)结构重写到 FROM项列表中。较小的值可减少规划时间,但是可能会生成差些的查询计划。

默认情况下,这个变量被设置成和from_collapse_limit相同, 这样适合大多数使用。把它设置为 1 可避免任何显式JOIN的重排序。因此查询中指定的显式连接顺序就是关系被连接的实际顺序。因为查询规划器并不是总能 选取最优的连接顺序,高级用户可以选择暂时把这个变量设置为 1,然后显式地指定他们想要的连接顺序。更多信息请见explicit-joins

将这个值设置为geqo_threshold或更大,可能触发使用 GEQO 规划器,从而产生非最优计划。见runtime-config-query-geqo

建议 [EN]

If for some reason you wanted to explicitly declare the join order for all of your queries, you could set this to 1. That is not recommended, though.

条评论