Interface WinAggImplementor
-
- All Superinterfaces:
AggImplementor
- All Known Implementing Classes:
RexImpTable.CountWinImplementor
,RexImpTable.DenseRankImplementor
,RexImpTable.FirstLastValueImplementor
,RexImpTable.FirstValueImplementor
,RexImpTable.LagImplementor
,RexImpTable.LastValueImplementor
,RexImpTable.LeadImplementor
,RexImpTable.LeadLagImplementor
,RexImpTable.NthValueImplementor
,RexImpTable.NtileImplementor
,RexImpTable.RankImplementor
,RexImpTable.RowNumberImplementor
,StrictWinAggImplementor
public interface WinAggImplementor extends AggImplementor
Implements a windowed aggregate function by generating expressions to initialize, add to, and get a result from, an accumulator. Windowed aggregate is more powerful than regular aggregate since it can access rows in the current partition by row indices. Regular aggregate can be used to implement windowed aggregate.This interface does not define new methods: window-specific sub-interfaces are passed when implementing window aggregate.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
WinAggImplementor.SeekType
Allows to access rows in window partition relative to first/last and current row.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
needCacheWhenFrameIntact()
-
Methods inherited from interface org.apache.calcite.adapter.enumerable.AggImplementor
getStateType, implementAdd, implementReset, implementResult
-
-