Class AggregateProjectMergeRule

  • public class AggregateProjectMergeRule
    extends RelOptRule
    Planner rule that recognizes a Aggregate on top of a Project and if possible aggregate through the project or removes the project.

    This is only possible when the grouping expressions and arguments to the aggregate functions are field references (i.e. not expressions).

    In some cases, this rule has the effect of trimming: the aggregate will use fewer columns than the project did.