public class Collect extends SingleRel
Rules:
SubQueryRemoveRule
creates a Collect from a call to
SqlArrayQueryConstructor,
SqlMapQueryConstructor, or
SqlMultisetQueryConstructor.RelNode.Contextdigest, id, rowType, traitSet| Modifier | Constructor and Description |
|---|---|
|
Collect(RelInput input)
Creates a Collect by parsing serialized output.
|
protected |
Collect(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode input,
RelDataType rowType)
Creates a Collect.
|
|
Collect(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode input,
String fieldName)
Deprecated.
|
| Modifier and Type | Method and Description |
|---|---|
RelNode |
copy(RelTraitSet traitSet,
List<RelNode> inputs)
Creates a copy of this relational expression, perhaps changing traits and
inputs.
|
RelNode |
copy(RelTraitSet traitSet,
RelNode input) |
static Collect |
create(RelNode input,
RelDataType rowType)
Creates a Collect.
|
static Collect |
create(RelNode input,
SqlKind sqlKind,
String fieldName)
Creates a Collect.
|
static Collect |
create(RelNode input,
SqlTypeName collectionType,
String fieldName)
Deprecated.
|
static RelDataType |
deriveCollectRowType(SingleRel rel,
String fieldName)
Deprecated.
|
protected RelDataType |
deriveRowType() |
static RelDataType |
deriveRowType(RelDataTypeFactory typeFactory,
SqlTypeName collectionType,
String fieldName,
RelDataType elementType)
Derives the output row type of a Collect relational expression.
|
RelWriter |
explainTerms(RelWriter pw)
Describes the inputs and attributes of this relational expression.
|
SqlTypeName |
getCollectionType()
Returns the collection type (ARRAY, MAP, or MULTISET).
|
String |
getFieldName()
Returns the name of the sole output field.
|
protected RelDataType |
rowType()
Returns the row type, guaranteed not null.
|
childrenAccept, estimateRowCount, getInput, getInputs, replaceInputaccept, accept, collectVariablesSet, collectVariablesUsed, computeSelfCost, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, getVariablesSet, hashCode, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, sole, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitexplain, fieldIsNullableprotected Collect(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, RelDataType rowType)
Use create(org.apache.calcite.rel.RelNode, org.apache.calcite.rel.type.RelDataType) unless you know what you're doing.
cluster - ClustertraitSet - Trait setinput - Input relational expressionrowType - Row type@Deprecated public Collect(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, String fieldName)
public Collect(RelInput input)
public static Collect create(RelNode input, RelDataType rowType)
input - Input relational expressionrowType - Row type@Deprecated public static Collect create(RelNode input, SqlTypeName collectionType, String fieldName)
input - Input relational expressioncollectionType - ARRAY, MAP or MULTISETfieldName - Name of the sole output fieldpublic static Collect create(RelNode input, SqlKind sqlKind, String fieldName)
input - Input relational expressionsqlKind - SqlKindfieldName - Name of the sole output fieldprotected final RelDataType rowType()
public final RelNode 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 RelNode copy(RelTraitSet traitSet, RelNode input)
public RelWriter explainTerms(RelWriter pw)
AbstractRelNodesuper.explainTerms, then call the
RelWriter.input(String, RelNode)
and
RelWriter.item(String, Object)
methods for each input and attribute.explainTerms in class SingleRelpw - Plan writerpublic String getFieldName()
public SqlTypeName getCollectionType()
protected RelDataType deriveRowType()
deriveRowType in class SingleRel@Deprecated public static RelDataType deriveCollectRowType(SingleRel rel, String fieldName)
rel - relational expressionfieldName - name of sole output fieldpublic static RelDataType deriveRowType(RelDataTypeFactory typeFactory, SqlTypeName collectionType, String fieldName, RelDataType elementType)
typeFactory - Type factorycollectionType - MULTISET, ARRAY or MAPfieldName - Name of sole output fieldelementType - Element typeCopyright © 2012-2022 Apache Software Foundation. All Rights Reserved.