public abstract class ProjectToWindowRule extends RelRule<ProjectToWindowRule.Config> implements TransformationRule
Project
into sections which contain windowed
aggregate functions and sections which do not.
The sections which contain windowed agg functions become instances of
LogicalWindow.
If the LogicalCalc does not contain
any windowed agg functions, does nothing.
There is also a variant that matches
Calc rather than Project.
| Modifier and Type | Class and Description |
|---|---|
static class |
ProjectToWindowRule.CalcToWindowRule
Instance of the rule that applies to a
Calc that contains
windowed aggregates and converts it into a mixture of
LogicalWindow and Calc. |
static interface |
ProjectToWindowRule.Config
Rule configuration.
|
static class |
ProjectToWindowRule.ProjectToLogicalProjectAndWindowRule
Instance of the rule that can be applied to a
Project and that produces, in turn,
a mixture of LogicalProject
and LogicalWindow. |
RelRule.Done, RelRule.MatchHandler<R extends RelOptRule>, RelRule.OperandBuilder, RelRule.OperandDetailBuilder<R extends RelNode>, RelRule.OperandTransformRelOptRule.ConverterRelOptRuleOperanddescription, operands, relBuilderFactory| Modifier | Constructor and Description |
|---|---|
protected |
ProjectToWindowRule(ProjectToWindowRule.Config config)
Creates a ProjectToWindowRule.
|
any, convert, convert, convertList, convertOperand, convertOperand, equals, equals, getOperand, getOperands, getOutConvention, getOutTrait, hashCode, matches, none, onMatch, operand, operand, operand, operand, operand, operandJ, operandJ, some, toString, unorderedprotected ProjectToWindowRule(ProjectToWindowRule.Config config)
Copyright © 2012-2022 Apache Software Foundation. All Rights Reserved.