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.
Aliased joined tables
Applies to ✅ Open Source Edition ✅ Express Edition ✅ Professional Edition ✅ Enterprise Edition
Some SQL dialects follow the SQL standard that allows for aliasing also joined tables, i.e. the product of a JOIN
operator, not just the individual JOIN
operands. If that isn't available, jOOQ will try to emulate the feature assuming there can't be any column ambiguities.
Table<?> t = AUTHOR.join(BOOK).on(AUTHOR.ID.eq(BOOK.AUTHOR_ID)).as("t");
Dialect support
This example using jOOQ:
selectFrom(AUTHOR.join(BOOK).on(AUTHOR.ID.eq(BOOK.AUTHOR_ID)).as("t"))
Translates to the following dialect specific expressions:
Access
SELECT t.ID, t.FIRST_NAME, t.LAST_NAME, t.DATE_OF_BIRTH, t.YEAR_OF_BIRTH, t.DISTINGUISHED, t.ID, t.AUTHOR_ID, t.TITLE, t.PUBLISHED_IN, t.LANGUAGE_ID FROM ( AUTHOR INNER JOIN BOOK ON AUTHOR.ID = BOOK.AUTHOR_ID ) t
ASE, Aurora Postgres, ClickHouse, CockroachDB, Databricks, Exasol, H2, HSQLDB, Hana, Informix, Postgres, Redshift, Teradata, Trino, Vertica, YugabyteDB
SELECT t.ID, t.FIRST_NAME, t.LAST_NAME, t.DATE_OF_BIRTH, t.YEAR_OF_BIRTH, t.DISTINGUISHED, t.ID, t.AUTHOR_ID, t.TITLE, t.PUBLISHED_IN, t.LANGUAGE_ID FROM ( AUTHOR JOIN BOOK ON AUTHOR.ID = BOOK.AUTHOR_ID ) t
Aurora MySQL, BigQuery, DB2, Derby, DuckDB, Firebird, MariaDB, MemSQL, MySQL, Oracle, SQLDataWarehouse, SQLServer, SQLite, Snowflake, Sybase
SELECT t.ID, t.FIRST_NAME, t.LAST_NAME, t.DATE_OF_BIRTH, t.YEAR_OF_BIRTH, t.DISTINGUISHED, t.ID, t.AUTHOR_ID, t.TITLE, t.PUBLISHED_IN, t.LANGUAGE_ID FROM ( SELECT * FROM AUTHOR JOIN BOOK ON AUTHOR.ID = BOOK.AUTHOR_ID ) t
Generated with jOOQ 3.21. Support in older jOOQ versions may differ. Translate your own SQL on our website
Feedback
Do you have any feedback about this page? We'd love to hear it!