|The jOOQ User Manual : SQL building : Table expressions : Joined tables : USING clause||previous : next|
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.
Applies to ✅ Open Source Edition ✅ Express Edition ✅ Professional Edition ✅ Enterprise Edition
One way to supply this join predicate is the
USING clause, which allows for specifying a set of column names that are common to both tables, based on which to form a join predicate. Assuming we called our
SELECT * FROM AUTHOR JOIN BOOK USING (AUTHOR_ID)
create.select() .from(AUTHOR) .join(BOOK).using(AUTHOR.AUTHOR_ID) .fetch();
There is a certain risk of ambiguities as well in more complex join trees, but in simple cases, this can be a very convenient way to join tables if you design your schema accordingly. The is a good example where all
FOREIGN KEY columns share the referenced
PRIMARY KEY column's names.