EXCLUDE
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
虽然大多数方言对它的支持不佳,但这个标准 SQL 扩展,窗口帧子句可以非常方便地控制当前 ROW
、GROUP
或 TIES
的排除。
选项包括
-
EXCLUDE CURRENT ROW
:仅从窗口中排除当前行 -
EXCLUDE GROUP
:属于当前行组的行将从窗口中排除 -
EXCLUDE TIES
:与当前行关联的行将从窗口中排除 -
EXCLUDE NO OTHERS
:默认值。
方言支持
此示例使用 jOOQ
count().over(orderBy(BOOK.ID).rowsPreceding(3).excludeCurrentRow())
翻译成以下特定方言的表达式
CockroachDB、DuckDB、Exasol、H2、Oracle、Postgres、SQLite、Trino、YugabyteDB
count(*) OVER ( ORDER BY BOOK.ID ROWS 3 PRECEDING EXCLUDE CURRENT ROW )
ASE、Access、Aurora MySQL、Aurora Postgres、BigQuery、ClickHouse、DB2、Databricks、Derby、Firebird、HSQLDB、Hana、Informix、MariaDB、MemSQL、MySQL、Redshift、SQLDataWarehouse、SQLServer、Snowflake、Sybase、Teradata、Vertica
/* UNSUPPORTED */
使用 jOOQ 3.21 生成。早期 jOOQ 版本的支持可能有所不同。 在我们的网站上翻译您自己的 SQL
反馈
您对此页面有任何反馈吗? 我们很乐意听取您的意见!