别名连接的表
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
一些 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
反馈
您对此页面有任何反馈吗? 我们很乐意听到!