可用版本:Dev (3.21) | 最新 (3.20) | 3.19 | 3.18

不必要的INNER JOIN

适用于 ✅ 开源版   ✅ 专业版   ✅ 企业版

一个 ON 子句始终为 TRUEINNER JOIN,或者实际上并没有在 JOIN 操作符的两侧进行连接,可以转换为 CROSS JOIN。在大多数情况下,CROSS JOIN 是偶然的,但使用该语法,至少可以更容易地识别错误。

使用 Settings.transformPatternsUnnecessaryInnerJoin,可以实现以下转换

-- With Settings.transformPatternsUnnecessaryInnerJoin active, this:
SELECT * FROM t JOIN u ON TRUE;

-- ... is transformed into the equivalent expression:
SELECT * FROM t CROSS JOIN u;

反馈

您对此页面有任何反馈吗? 我们很乐意听到您的意见!

The jOOQ Logo