类型: | 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.