Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

correlated_subqueries_* 会话设置

这些设置可在 system.settings 中查看,并由 源代码 自动生成。

correlated_subqueries_default_join_kind

类型
DecorrelationJoinKind
默认值
right
版本历史
版本默认值注释
25.11right新增设置。解关联查询计划的默认 JOIN 类型。
25.10right新增设置。解关联查询计划的默认 JOIN 类型。

控制解关联查询计划中的 JOIN 类型。默认值为 right,这意味着解关联后的查询计划将包含 RIGHT JOIN,且子查询输入位于右侧。

可能的值:

  • left - 解关联过程将生成 LEFT JOIN,输入表将位于左侧。
  • right - 解关联过程将生成 RIGHT JOIN,输入表将位于右侧。

当子查询输入通过内存中缓冲区共享时 (请参阅 correlated_subqueries_use_in_memory_buffer) ,无论此设置为何,都会使用 right,因为只有该布局会在读取缓冲区之前写入缓冲区。JOIN 类型是解关联计划的内部实现细节,不会影响结果。

correlated_subqueries_substitute_equivalent_expressions

类型
Bool
默认值
1
版本历史
版本默认值注释
25.71为关联子查询规划优化新增的设置。

使用过滤表达式推断等效表达式,并用其替代创建 CROSS JOIN。

correlated_subqueries_use_in_memory_buffer

类型
Bool
默认值
1
版本历史
版本默认值注释
26.11默认对关联子查询的输入使用内存中缓冲区。

对关联子查询的输入使用内存中缓冲区,以避免重复求值。

Navigation