不必要的标量子查询
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
仅包含投影的标量子查询是不必要的。虽然用户不太可能实现这种仅投影的标量子查询,但它们可能会作为其他转换的结果出现。此规则排除以下标量子查询:
- 包含聚合函数
- 包含窗口函数
- 包含在 GROUP BY 子句中 (
GROUP BY (SELECT 1)
可能与GROUP BY 1
具有不同的含义) - 包含在 ORDER BY 子句中 (
ORDER BY (SELECT 1)
与ORDER BY 1
具有不同的含义)
使用 Settings.transformPatternsUnnecessaryScalarSubquery
,可以实现以下转换
-- With Settings.transformPatternsUnnecessaryScalarSubquery active, this: SELECT (SELECT a) FROM t WHERE (SELECT a) = b; -- ... is transformed into the equivalent expression: SELECT a FROM t WHERE a = b;
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!