BETWEEN谓词
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
BETWEEN
谓词可以看作是一对 比较谓词 的语法糖。根据 SQL 标准,以下两个谓词是等效的
A BETWEEN B AND C
A >= B AND A <= C
请注意 BETWEEN
谓词定义中范围边界的包含性。直观地说,这在 jOOQ 中得到如下支持
PUBLISHED_IN BETWEEN 1920 AND 1940 PUBLISHED_IN NOT BETWEEN 1920 AND 1940
BOOK.PUBLISHED_IN.between(1920).and(1940) BOOK.PUBLISHED_IN.notBetween(1920).and(1940)
方言支持
此示例使用 jOOQ
BOOK.TITLE.between("E").and("K")
翻译成以下特定方言的表达式
所有方言
BOOK.TITLE BETWEEN 'E' AND 'K'
使用 jOOQ 3.21 生成。早期 jOOQ 版本的支持可能有所不同。 在我们的网站上翻译您自己的 SQL
BETWEEN SYMMETRIC
SQL 标准定义了 SYMMETRIC
关键字与 BETWEEN
一起使用,以表明您不关心范围的哪个边界大于另一个边界。如果第一个边界大于第二个边界,数据库系统应该简单地交换范围边界。 jOOQ 也支持这个关键字,并在必要时进行模拟。
PUBLISHED_IN BETWEEN SYMMETRIC 1940 AND 1920 PUBLISHED_IN NOT BETWEEN SYMMETRIC 1940 AND 1920
BOOK.PUBLISHED_IN.betweenSymmetric(1940).and(1920) BOOK.PUBLISHED_IN.notBetweenSymmetric(1940).and(1920)
模拟非常简单
A BETWEEN SYMMETRIC B AND C
(A BETWEEN B AND C) OR (A BETWEEN C AND B)
方言支持
此示例使用 jOOQ
BOOK.TITLE.betweenSymmetric("K").and("E")
翻译成以下特定方言的表达式
ASE, Access, Aurora MySQL, BigQuery, ClickHouse, DB2, Databricks, Derby, DuckDB, Firebird, H2, Hana, Informix, MariaDB, MemSQL, MySQL, Oracle, Redshift, SQLDataWarehouse, SQLServer, SQLite, Snowflake, Sybase, Teradata, Trino, Vertica
( BOOK.TITLE BETWEEN 'K' AND 'E' OR BOOK.TITLE BETWEEN 'E' AND 'K' )
Aurora Postgres, CockroachDB, Exasol, HSQLDB, Postgres, YugabyteDB
BOOK.TITLE BETWEEN SYMMETRIC 'K' AND 'E'
使用 jOOQ 3.21 生成。早期 jOOQ 版本的支持可能有所不同。 在我们的网站上翻译您自己的 SQL
反馈
您对此页面有任何反馈吗?我们很乐意倾听!