Interface WindowOverStep<T>
- Type Parameters:
T- The function return type
- All Known Subinterfaces:
AggregateFilterStep<T>, AggregateFunction<T>, ArrayAggOrderByStep<T>, GroupConcatOrderByStep, GroupConcatSeparatorStep, JSONArrayAggNullStep<T>, JSONArrayAggOrderByStep<J>, JSONArrayAggReturningStep<T>, JSONObjectAggNullStep<T>, JSONObjectAggReturningStep<T>, OptionallyOrderedAggregateFunction<T>, QOM.AggregateFunction<T,Q>, QOM.AnyValue<T>, QOM.ApproxCountDistinct, QOM.ApproxCountLargeDistinct, QOM.ApproxPercentileCont, QOM.ApproxPercentileDisc, QOM.ArrayAgg<T>, QOM.Avg, QOM.BinaryListAgg, QOM.BitAndAgg<T>, QOM.BitNandAgg<T>, QOM.BitNorAgg<T>, QOM.BitOrAgg<T>, QOM.BitXNorAgg<T>, QOM.BitXorAgg<T>, QOM.BoolAnd, QOM.BoolOr, QOM.Collect<T, A>, QOM.Corr, QOM.Count, QOM.CountLarge, QOM.CountLargeMultiple, QOM.CountLargeTable, QOM.CountMultiple, QOM.CountTable, QOM.CovarPop, QOM.CovarSamp, QOM.CumeDistAgg, QOM.DenseRankAgg, QOM.JSONArrayAgg<J>, QOM.JSONObjectAgg<J>, QOM.ListAgg, QOM.Max<T>, QOM.MaxBy<T>, QOM.Median, QOM.Min<T>, QOM.MinBy<T>, QOM.Mode<T>, QOM.ModeOrdered<T>, QOM.MultisetAgg<R>, QOM.OrderedAggregateFunction<T, Q>, QOM.PercentileCont, QOM.PercentileDisc, QOM.PercentRankAgg, QOM.Product, QOM.RankAgg, QOM.RatioToReport, QOM.RegrAvgX, QOM.RegrAvgY, QOM.RegrCount, QOM.RegrIntercept, QOM.RegrR2, QOM.RegrSlope, QOM.RegrSxx, QOM.RegrSxy, QOM.RegrSyy, QOM.StddevPop, QOM.StddevSamp, QOM.Sum, QOM.VarPop, QOM.VarSamp, QOM.XMLAgg, WindowBeforeOverStep<T>, WindowFromFirstLastStep<T>, WindowIgnoreNullsStep<T>, XMLAggOrderByStep<T>
public interface WindowOverStep<T>
This type is used for the window function DSL API.
Example:
field.firstValue()
.ignoreNulls()
.over()
.partitionBy(AUTHOR_ID)
.orderBy(PUBLISHED_IN.asc())
.rowsBetweenUnboundedPreceding()
.andUnboundedFollowing()
Unlike in WindowBeforeOverStep, OVER() is a mandatory
clause.
- Author:
- Lukas Eder
-
Method Summary
Modifier and TypeMethodDescription@NotNull WindowPartitionByStep<T> over()Turn this aggregate function into a window function.@NotNull WindowFinalStep<T> Turn this aggregate function into a window function referencing a window name.@NotNull WindowFinalStep<T> Turn this aggregate function into a window function referencing a window name.@NotNull WindowFinalStep<T> over(WindowDefinition definition) Turn this aggregate function into a window function referencing a window definition.@NotNull WindowFinalStep<T> over(WindowSpecification specification) Turn this aggregate function into a window function.
-
Method Details
-
over
@NotNull @Support({AURORA_POSTGRES,BIGQUERY,CLICKHOUSE,COCKROACHDB,CUBRID,DATABRICKS,DB2,DERBY,DUCKDB,EXASOL,FIREBIRD_3_0,H2,HANA,HSQLDB,INFORMIX,MARIADB,MEMSQL,MYSQL_8_0,ORACLE,POSTGRES,REDSHIFT,SNOWFLAKE,SQLDATAWAREHOUSE,SQLITE,SQLSERVER,SYBASE,TERADATA,TRINO,VERTICA,YUGABYTEDB}) @NotNull WindowPartitionByStep<T> over()Turn this aggregate function into a window function.An example:
MAX(id) OVER (PARTITION BY 1) -
over
@NotNull @Support({AURORA_POSTGRES,BIGQUERY,CLICKHOUSE,COCKROACHDB,CUBRID,DATABRICKS,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 WindowFinalStep<T> over(Name name) Turn this aggregate function into a window function referencing a window name.An example:
MAX(id) OVER my_windowIf the
WINDOWclause is not supported (seeSelectWindowStep.window(WindowDefinition...), then referenced windows will be inlined. -
over
@NotNull @Support({AURORA_POSTGRES,BIGQUERY,CLICKHOUSE,COCKROACHDB,CUBRID,DATABRICKS,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 WindowFinalStep<T> over(String name) Turn this aggregate function into a window function referencing a window name.An example:
MAX(id) OVER my_windowIf the
WINDOWclause is not supported (seeSelectWindowStep.window(WindowDefinition...), then referenced windows will be inlined. -
over
@NotNull @Support({AURORA_POSTGRES,BIGQUERY,CLICKHOUSE,COCKROACHDB,CUBRID,DATABRICKS,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 WindowFinalStep<T> over(WindowSpecification specification) Turn this aggregate function into a window function.An example:
MAX(id) OVER (PARTITION BY 1) -
over
@NotNull @Support({AURORA_POSTGRES,BIGQUERY,CLICKHOUSE,COCKROACHDB,CUBRID,DATABRICKS,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 WindowFinalStep<T> over(WindowDefinition definition) Turn this aggregate function into a window function referencing a window definition.An example:
MAX(id) OVER my_windowIf the
WINDOWclause is not supported (seeSelectWindowStep.window(WindowDefinition...), then referenced windows will be inlined.
-