- All Superinterfaces:
QueryPart
,Serializable
,WindowSpecification
,WindowSpecificationFinalStep
,WindowSpecificationOrderByStep
,WindowSpecificationRowsStep
An intermediate step in the construction of a Referencing
WindowSpecification
.
Example:
WindowSpecification spec =
DSL.partitionBy(BOOK.AUTHOR_ID)
.orderBy(BOOK.ID)
.rowsBetweenUnboundedPreceding()
.andCurrentRow();
Referencing XYZ*Step
types directly from client code
It is usually not recommended to reference any XYZ*Step
types
directly from client code, or assign them to local variables. When writing
dynamic SQL, creating a statement's components dynamically, and passing them
to the DSL API statically is usually a better choice. See the manual's
section about dynamic SQL for details: https://www.jooq.org/doc/latest/manual/sql-building/dynamic-sql.
Drawbacks of referencing the XYZ*Step
types directly:
- They're operating on mutable implementations (as of jOOQ 3.x)
- They're less composable and not easy to get right when dynamic SQL gets complex
- They're less readable
- They might have binary incompatible changes between minor releases
- Author:
- Lukas Eder
-
Method Summary
Modifier and TypeMethodDescription@NotNull WindowSpecificationOrderByStep
partitionBy
(Collection<? extends GroupField> fields) Add aPARTITION BY
clause to the window specification.@NotNull WindowSpecificationOrderByStep
partitionBy
(GroupField... fields) Add aPARTITION BY
clause to the window specification.@NotNull WindowSpecificationOrderByStep
Deprecated, for removal: This API element is subject to removal in a future version.Methods inherited from interface org.jooq.QueryPart
$replace, $replace, $traverse, $traverse, equals, hashCode, toString
Methods inherited from interface org.jooq.WindowSpecification
$exclude, $frameEnd, $frameStart, $frameUnits, $orderBy, $partitionBy, $windowDefinition
Methods inherited from interface org.jooq.WindowSpecificationOrderByStep
orderBy, orderBy
Methods inherited from interface org.jooq.WindowSpecificationRowsStep
groupsBetweenCurrentRow, groupsBetweenFollowing, groupsBetweenPreceding, groupsBetweenUnboundedFollowing, groupsBetweenUnboundedPreceding, groupsCurrentRow, groupsFollowing, groupsPreceding, groupsUnboundedFollowing, groupsUnboundedPreceding, rangeBetweenCurrentRow, rangeBetweenFollowing, rangeBetweenPreceding, rangeBetweenUnboundedFollowing, rangeBetweenUnboundedPreceding, rangeCurrentRow, rangeFollowing, rangePreceding, rangeUnboundedFollowing, rangeUnboundedPreceding, rowsBetweenCurrentRow, rowsBetweenFollowing, rowsBetweenPreceding, rowsBetweenUnboundedFollowing, rowsBetweenUnboundedPreceding, rowsCurrentRow, rowsFollowing, rowsPreceding, rowsUnboundedFollowing, rowsUnboundedPreceding
-
Method Details
-
partitionBy
@NotNull @Support({AURORA_POSTGRES,BIGQUERY,COCKROACHDB,CUBRID,DB2,DUCKDB,EXASOL,FIREBIRD_3_0,H2,HANA,INFORMIX,MARIADB,MEMSQL,MYSQL_8_0,ORACLE,POSTGRES,REDSHIFT,SNOWFLAKE,SQLDATAWAREHOUSE,SQLITE,SQLSERVER,SYBASE,TERADATA,TRINO,VERTICA,YUGABYTEDB}) @NotNull WindowSpecificationOrderByStep partitionBy(GroupField... fields) Add aPARTITION BY
clause to the window specification. -
partitionBy
@NotNull @Support({AURORA_POSTGRES,BIGQUERY,COCKROACHDB,CUBRID,DB2,DUCKDB,EXASOL,FIREBIRD_3_0,H2,HANA,INFORMIX,MARIADB,MEMSQL,MYSQL_8_0,ORACLE,POSTGRES,REDSHIFT,SNOWFLAKE,SQLDATAWAREHOUSE,SQLITE,SQLSERVER,SYBASE,TERADATA,TRINO,VERTICA,YUGABYTEDB}) @NotNull WindowSpecificationOrderByStep partitionBy(Collection<? extends GroupField> fields) Add aPARTITION BY
clause to the window specification. -
partitionByOne
@Deprecated(forRemoval=true, since="3.10") @NotNull @Support({AURORA_POSTGRES,BIGQUERY,COCKROACHDB,CUBRID,DB2,DUCKDB,EXASOL,FIREBIRD_3_0,H2,HANA,INFORMIX,MARIADB,MEMSQL,MYSQL_8_0,ORACLE,POSTGRES,REDSHIFT,SNOWFLAKE,SQLDATAWAREHOUSE,SQLITE,SQLSERVER,SYBASE,TERADATA,TRINO,VERTICA,YUGABYTEDB}) @NotNull WindowSpecificationOrderByStep partitionByOne()Deprecated, for removal: This API element is subject to removal in a future version.- 3.10 - [#6427] - This synthetic clause is no longer supported, usepartitionBy(GroupField...)
instead, or omit the clause entirely.Add aPARTITION BY 1
clause to the window specification, where such a clause is required by the syntax of an RDBMS.
-
partitionBy(GroupField...)
instead, or omit the clause entirely.