量化比较谓词
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
如果比较谓词的右侧是一个非标量表子查询,您可以将该子查询包装在量词中,例如 ALL
、ANY
或 SOME
。 请注意,SQL 标准将 ANY
和 SOME
定义为等效。 jOOQ 选择了更直观的 ANY
并且不支持 SOME
。 以下是一些 jOOQ 支持的示例
TITLE = ANY('Animal Farm', '1982') PUBLISHED_IN > ALL(1920, 1940)
BOOK.TITLE.eq(any("Animal Farm", "1982")); BOOK.PUBLISHED_IN.gt(all(1920, 1940));
[ROW VALUE EXPRESSION] IN [IN PREDICATE VALUE]
[ROW VALUE EXPRESSION] = ANY [IN PREDICATE VALUE]
BOOK.AUTHOR_ID.eq(any(select(AUTHOR.ID).from(AUTHOR)))
翻译成以下特定方言的表达式
ASE, Aurora MySQL, Aurora Postgres, ClickHouse, CockroachDB, DB2, Derby, DuckDB, Firebird, H2, HSQLDB, Hana, Informix, MariaDB, MySQL, Oracle, Postgres, SQLServer, Sybase, Teradata, Vertica, YugabyteDB
BOOK.AUTHOR_ID = ANY ( SELECT AUTHOR.ID FROM AUTHOR )
Access, BigQuery, Databricks, Exasol, MemSQL, Redshift, SQLDataWarehouse, SQLite, Snowflake, Trino
/* UNSUPPORTED */
使用 jOOQ 3.21 生成。早期 jOOQ 版本的支持可能有所不同。 在我们的网站上翻译您自己的 SQL
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!