Available in versions: Dev (3.20) | Latest (3.19) | 3.18 | 3.17 | 3.16 | 3.15 | 3.14

This documentation is for the unreleased development version of jOOQ. Click on the above version links to get this documentation for a supported version of jOOQ.

Table lists to ANSI JOIN

Applies to ❌ Open Source Edition   ✅ Express Edition   ✅ Professional Edition   ✅ Enterprise Edition

When upgrading from legacy join syntax to the "new" (1992!) ANSI JOIN syntax, the Settings.transformTableListsToAnsiJoin flag can be turned on to produce the following type of transformation:

-- Input
SELECT *
FROM a, b
WHERE a.id = b.id
-- Output
SELECT *
FROM a
JOIN b ON a.id = b.id

This also works for OUTER JOIN:

-- Input
SELECT *
FROM a, b
WHERE a.id = b.id(+)
-- Output
SELECT *
FROM a
LEFT JOIN b ON a.id = b.id

Example configuration

Settings settings = new Settings()
    .withTransformTableListsToAnsiJoin(true);

References to this page

Feedback

Do you have any feedback about this page? We'd love to hear it!

The jOOQ Logo