public final class LogicalWindow extends Window
Window
not targeted at any particular engine or calling convention.| Modifier and Type | Class and Description |
|---|---|
private static class |
LogicalWindow.WindowKey
Group specification.
|
Window.Group, Window.RexWinAggCallRelNode.Contextdigest, id, rowType, traitSet| Constructor and Description |
|---|
LogicalWindow(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode input,
List<RexLiteral> constants,
RelDataType rowType,
List<Window.Group> groups)
Creates a LogicalWindow.
|
| Modifier and Type | Method and Description |
|---|---|
private static void |
addWindows(com.google.common.collect.Multimap<LogicalWindow.WindowKey,RexOver> windowMap,
RexOver over,
int inputFieldCount) |
LogicalWindow |
copy(RelTraitSet traitSet,
List<RelNode> inputs)
Creates a copy of this relational expression, perhaps changing traits and
inputs.
|
static RelNode |
create(RelOptCluster cluster,
RelTraitSet traitSet,
RelBuilder relBuilder,
RelNode child,
RexProgram program)
Creates a LogicalWindow by parsing a
RexProgram. |
static LogicalWindow |
create(RelTraitSet traitSet,
RelNode input,
List<RexLiteral> constants,
RelDataType rowType,
List<Window.Group> groups)
Creates a LogicalWindow.
|
private static List<RexNode> |
toInputRefs(List<? extends RexNode> operands) |
computeSelfCost, explainTerms, getCollation, getConstants, getProjectOrdinals, isValidchildrenAccept, deriveRowType, estimateRowCount, getInput, getInputs, replaceInputaccept, accept, collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, explain, getChildExps, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getQuery, getRelTypeName, getRows, getRowType, getTable, getTraitSet, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, metadata, onRegister, recomputeDigest, register, sole, toStringpublic LogicalWindow(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, List<RexLiteral> constants, RelDataType rowType, List<Window.Group> groups)
Use create(org.apache.calcite.plan.RelTraitSet, org.apache.calcite.rel.RelNode, java.util.List<org.apache.calcite.rex.RexLiteral>, org.apache.calcite.rel.type.RelDataType, java.util.List<org.apache.calcite.rel.core.Window.Group>) unless you know what you're doing.
cluster - ClustertraitSet - Trait setinput - Input relational expressionconstants - List of constants that are additional inputsrowType - Output row typegroups - Window groupspublic LogicalWindow copy(RelTraitSet traitSet, List<RelNode> inputs)
RelNodeSub-classes with other important attributes are encouraged to create variants of this method with more parameters.
copy in interface RelNodecopy in class AbstractRelNodetraitSet - Trait setinputs - Inputspublic static LogicalWindow create(RelTraitSet traitSet, RelNode input, List<RexLiteral> constants, RelDataType rowType, List<Window.Group> groups)
input - Input relational expressiontraitSet - Trait setconstants - List of constants that are additional inputsrowType - Output row typegroups - Window groupspublic static RelNode create(RelOptCluster cluster, RelTraitSet traitSet, RelBuilder relBuilder, RelNode child, RexProgram program)
RexProgram.private static void addWindows(com.google.common.collect.Multimap<LogicalWindow.WindowKey,RexOver> windowMap, RexOver over, int inputFieldCount)
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.