public class ZetaSqlUnnest
extends org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.SingleRel
Details of why unwrapping structs breaks ZetaSQL UNNEST syntax is in https://issues.apache.org/jira/browse/BEAM-10896.
| Modifier and Type | Field and Description | 
|---|---|
boolean | 
withOrdinality  | 
| Constructor and Description | 
|---|
ZetaSqlUnnest(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelInput input)
Creates an Uncollect by parsing serialized output. 
 | 
ZetaSqlUnnest(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptCluster cluster,
             org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet,
             org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode input,
             boolean withOrdinality)
Creates an Uncollect. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode | 
copy(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet,
    java.util.List<org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode> inputs)  | 
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode | 
copy(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet,
    org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode input)  | 
static ZetaSqlUnnest | 
create(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet,
      org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode input,
      boolean withOrdinality)
Creates an Uncollect. 
 | 
protected org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.type.RelDataType | 
deriveRowType()  | 
static org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.type.RelDataType | 
deriveUncollectRowType(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode rel,
                      boolean withOrdinality)
Returns the row type returned by applying the 'UNNEST' operation to a relational expression. 
 | 
org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelWriter | 
explainTerms(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelWriter pw)  | 
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, toStringpublic ZetaSqlUnnest(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelOptCluster cluster,
                     org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet,
                     org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode input,
                     boolean withOrdinality)
Use create(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode, boolean) unless you know what you're doing.
public ZetaSqlUnnest(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelInput input)
public static ZetaSqlUnnest create(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet, org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode input, boolean withOrdinality)
Each field of the input relational expression must be an array or multiset.
traitSet - Trait setinput - Input relational expressionwithOrdinality - Whether output should contain an ORDINALITY columnpublic org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelWriter explainTerms(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelWriter pw)
explainTerms in class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.SingleRelpublic final org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode copy(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet,
                                                                                        java.util.List<org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode> inputs)
copy in interface org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNodecopy in class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.AbstractRelNodepublic org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode copy(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.plan.RelTraitSet traitSet,
                                                                                  org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode input)
protected org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.type.RelDataType deriveRowType()
deriveRowType in class org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.SingleRelpublic static org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.type.RelDataType deriveUncollectRowType(org.apache.beam.vendor.calcite.v1_28_0.org.apache.calcite.rel.RelNode rel,
                                                                                                                    boolean withOrdinality)
Each column in the relational expression must be a multiset of structs or an array. The
 return type is the type of that column, plus an ORDINALITY column if withOrdinality.