Class EnumerableCombine
java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.core.Combine
org.apache.calcite.adapter.enumerable.EnumerableCombine
- All Implemented Interfaces:
Cloneable,EnumerableRel,RelOptNode,PhysicalNode,RelNode
Implementation of
Combine in
enumerable calling convention.
The output format is a wide table where each column corresponds to a query (named QUERY_0, QUERY_1, etc.) and each row contains a struct (map) with that query's column values for that row index. The number of output rows equals the maximum row count across all input queries. Queries with fewer rows have null values for the additional rows.
Example output for two queries:
QUERY_0 | QUERY_1
------------------------ | ------------------------
{empno=100, name=Bill} | {deptno=10, name=Sales}
{empno=110, name=Eric} | {deptno=20, name=HR}
{empno=120, name=Ted} | null
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.calcite.adapter.enumerable.EnumerableRel
EnumerableRel.Prefer, EnumerableRel.ResultNested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
RelNode.Context -
Field Summary
Fields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet -
Constructor Summary
ConstructorsConstructorDescriptionEnumerableCombine(RelOptCluster cluster, RelTraitSet traitSet, List<RelNode> inputs) -
Method Summary
Modifier and TypeMethodDescriptioncopy(RelTraitSet traitSet, List<RelNode> inputs) Creates a copy of this relational expression, perhaps changing traits and inputs.implement(EnumerableRelImplementor implementor, EnumerableRel.Prefer pref) Creates a plan for this expression according to a calling convention.Methods inherited from class org.apache.calcite.rel.core.Combine
computeSelfCost, create, deriveRowType, explainTerms, getInputs, replaceInputMethods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, equals, estimateRowCount, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, getVariablesSet, hashCode, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, sole, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.calcite.adapter.enumerable.EnumerableRel
deriveTraits, getDeriveMode, passThroughTraitsMethods inherited from interface org.apache.calcite.rel.PhysicalNode
derive, derive, passThroughMethods inherited from interface org.apache.calcite.rel.RelNode
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeSelfCost, deepEquals, deepHashCode, estimateRowCount, explain, explain, fieldIsNullable, getConvention, getCorrelVariable, getDigest, getExpectedInputRowType, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTable, getVariablesSet, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, replaceInput, strippedMethods inherited from interface org.apache.calcite.plan.RelOptNode
getCluster, getDescription, getId, getTraitSet
-
Constructor Details
-
EnumerableCombine
-
-
Method Details
-
copy
Description copied from interface:RelNodeCreates a copy of this relational expression, perhaps changing traits and inputs.Sub-classes with other important attributes are encouraged to create variants of this method with more parameters.
-
implement
public EnumerableRel.Result implement(EnumerableRelImplementor implementor, EnumerableRel.Prefer pref) Description copied from interface:EnumerableRelCreates a plan for this expression according to a calling convention.- Specified by:
implementin interfaceEnumerableRel- Parameters:
implementor- Implementorpref- Preferred representation for rows in result expression- Returns:
- Plan for this expression according to a calling convention
-