Interface AggAddContext

All Superinterfaces:
AggResetContext, AggResultContext, NestedBlockBuilder
All Known Subinterfaces:
WinAggAddContext
All Known Implementing Classes:
AggAddContextImpl, WinAggAddContextImpl

public interface AggAddContext extends AggResultContext
Information for a call to AggImplementor.implementAdd(AggContext, AggAddContext).

Typically, the aggregation implementation will use arguments() or rexArguments() to update aggregate value.

  • Method Details

    • rexArguments

      List<RexNode> rexArguments()
      Returns RexNode representation of arguments. This can be useful for manual translation of required arguments with different NullPolicy.
      Returns:
      RexNode representation of arguments
    • rexFilterArgument

      @Nullable RexNode rexFilterArgument()
      Returns RexNode representation of the filter, or null.
    • arguments

      List<Expression> arguments()
      Returns Linq4j form of arguments. The resulting value is equivalent to rowTranslator().translateList(rexArguments()). This is handy if you need just operate on argument.
      Returns:
      Linq4j form of arguments.
    • rowTranslator

      RexToLixTranslator rowTranslator()
      Returns a RexToLixTranslator suitable to transform the arguments.
      Returns:
      RexToLixTranslator suitable to transform the arguments