public class SingleDistinctAggregationToGroupBy extends Object implements Rule<AggregationNode>
- Aggregation
GROUP BY (k)
F1(DISTINCT s0, s1, ...),
F2(DISTINCT s0, s1, ...),
- X
into
- Aggregation
GROUP BY (k)
F1(x)
F2(x)
- Aggregation
GROUP BY (k, s0, s1, ...)
- X
Assumes s0, s1, ... are symbol references (i.e., complex expressions have been pre-projected)
Rule.Context, Rule.Result| Constructor and Description |
|---|
SingleDistinctAggregationToGroupBy() |
| Modifier and Type | Method and Description |
|---|---|
Rule.Result |
apply(AggregationNode aggregation,
Captures captures,
Rule.Context context) |
Pattern<AggregationNode> |
getPattern()
Returns a pattern to which plan nodes this rule applies.
|
public Pattern<AggregationNode> getPattern()
RulegetPattern in interface Rule<AggregationNode>public Rule.Result apply(AggregationNode aggregation, Captures captures, Rule.Context context)
apply in interface Rule<AggregationNode>Copyright © 2012–2019. All rights reserved.