public interface WinAggAddContext extends AggAddContext, WinAggResultContext
AggImplementor.implementAdd(AggContext, AggAddContext).
WinAggAddContext is used when implementing windowed aggregate.
Typically, the aggregation implementation will use AggAddContext.arguments()
or AggAddContext.rexArguments() to update aggregate value.
AggAddContext| Modifier and Type | Method and Description |
|---|---|
org.apache.calcite.linq4j.tree.Expression |
currentPosition()
Returns current position inside for-loop of window aggregate.
|
arguments, rexArguments, rexFilterArgument, rowTranslatorarguments, rexArgumentscall, key, keyFieldaccumulatorcompareRows, computeIndex, rowInFrame, rowInPartition, rowTranslatorendIndex, getFrameRowCount, getPartitionRowCount, hasRows, index, startIndexorg.apache.calcite.linq4j.tree.Expression currentPosition()
WinAggFrameContext.startIndex().
This is NOT current row as in "rows between current row".
If you need to know the relative index of the current row in the partition,
use WinAggFrameContext.index().WinAggFrameContext.index(),
WinAggFrameContext.startIndex()Copyright © 2012-2022 Apache Software Foundation. All Rights Reserved.