ANSI JOIN到表列表
适用于 ❌ 开源版 ✅ Express 版 ✅ 专业版 ✅ 企业版
几乎所有的 SQL 方言都支持 ANSI 92 JOIN 语法,但有时,用户可能希望生成与旧版 Oracle 版本兼容的 SQL,因为这些版本尚不支持此语法,或者对其优化器的支持有限。 作为一种解决方法,可以启用 Settings.transformAnsiJoinToTableLists
标志以产生以下类型的转换
-- Input SELECT * FROM a JOIN b ON a.id = b.id
-- Output SELECT * FROM a, b WHERE a.id = b.id
这也适用于 OUTER JOIN
-- Input SELECT * FROM a LEFT JOIN b ON a.id = b.id
-- Output SELECT * FROM a, b WHERE a.id = b.id(+)
示例配置
Settings settings = new Settings() .withTransformAnsiJoinToTableLists(true);
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!