public static final class RelDecorrelator.RemoveSingleAggregateRule extends org.apache.calcite.plan.RelRule<RelDecorrelator.RemoveSingleAggregateRule.RemoveSingleAggregateRuleConfig>
Aggregate(SINGLE_VALUE) Project(single expression) Aggregate
For instance (subtree taken from TPCH query 17):
LogicalAggregate(group=[{}], agg#0=[SINGLE_VALUE($0)]) LogicalProject(EXPR$0=[*(0.2:DECIMAL(2, 1), $0)]) LogicalAggregate(group=[{}], agg#0=[AVG($0)]) LogicalProject(L_QUANTITY=[$4]) LogicalFilter(condition=[=($1, $cor0.P_PARTKEY)]) LogicalTableScan(table=[[TPCH_01, LINEITEM]])
Will be converted into:
LogicalProject($f0=[*(0.2:DECIMAL(2, 1), $0)]) LogicalAggregate(group=[{}], agg#0=[AVG($0)]) LogicalProject(L_QUANTITY=[$4]) LogicalFilter(condition=[=($1, $cor0.P_PARTKEY)]) LogicalTableScan(table=[[TPCH_01, LINEITEM]])
Modifier and Type | Class and Description |
---|---|
static interface |
RelDecorrelator.RemoveSingleAggregateRule.RemoveSingleAggregateRuleConfig
Rule configuration.
|
org.apache.calcite.plan.RelRule.Config, org.apache.calcite.plan.RelRule.Done, org.apache.calcite.plan.RelRule.MatchHandler<R extends org.apache.calcite.plan.RelOptRule>, org.apache.calcite.plan.RelRule.OperandBuilder, org.apache.calcite.plan.RelRule.OperandDetailBuilder<R extends org.apache.calcite.rel.RelNode>, org.apache.calcite.plan.RelRule.OperandTransform
Modifier and Type | Method and Description |
---|---|
void |
onMatch(org.apache.calcite.plan.RelOptRuleCall call) |
any, convert, convert, convertList, convertOperand, convertOperand, equals, equals, getOperand, getOperands, getOutConvention, getOutTrait, hashCode, matches, none, operand, operand, operand, operand, operand, operandJ, operandJ, some, toString, unordered
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.