别名连接的表
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
一些 SQL 方言遵循 SQL 标准,允许为连接表(即 JOIN 运算符的结果)设置别名,而不仅仅是单个 JOIN 操作数。 如果这不可用,jOOQ 将尝试模拟该功能,前提是不能有任何列歧义。
Table<?> t = AUTHOR.join(BOOK).on(AUTHOR.ID.eq(BOOK.AUTHOR_ID)).as("t");
方言支持
此示例使用 jOOQ
selectFrom(AUTHOR.join(BOOK).on(AUTHOR.ID.eq(BOOK.AUTHOR_ID)).as("t"))
翻译成以下特定方言的表达式
访问
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
使用 jOOQ 3.21 生成。早期 jOOQ 版本的支持可能有所不同。 在我们的网站上翻译您自己的 SQL
反馈
您对此页面有任何反馈吗? 我们很乐意听到!