public abstract class Match extends SingleRel
Each output row has the columns defined in the measure statements.
| Modifier and Type | Class and Description |
|---|---|
static class |
Match.RexMRAggCall
Aggregate calls in match recognize.
|
RelNode.Context| Modifier and Type | Field and Description |
|---|---|
protected RexNode |
after |
protected Set<Match.RexMRAggCall> |
aggregateCalls |
protected Map<String,SortedSet<Match.RexMRAggCall>> |
aggregateCallsPreVar |
protected boolean |
allRows |
protected @Nullable RexNode |
interval |
protected com.google.common.collect.ImmutableMap<String,RexNode> |
measures |
protected RelCollation |
orderKeys |
protected ImmutableBitSet |
partitionKeys |
protected RexNode |
pattern |
protected com.google.common.collect.ImmutableMap<String,RexNode> |
patternDefinitions |
protected boolean |
strictEnd |
protected boolean |
strictStart |
protected com.google.common.collect.ImmutableMap<String,SortedSet<String>> |
subsets |
digest, id, rowType, traitSet| Modifier | Constructor and Description |
|---|---|
protected |
Match(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode input,
RelDataType rowType,
RexNode pattern,
boolean strictStart,
boolean strictEnd,
Map<String,RexNode> patternDefinitions,
Map<String,RexNode> measures,
RexNode after,
Map<String,? extends SortedSet<String>> subsets,
boolean allRows,
ImmutableBitSet partitionKeys,
RelCollation orderKeys,
@Nullable RexNode interval)
Creates a Match.
|
| Modifier and Type | Method and Description |
|---|---|
RelWriter |
explainTerms(RelWriter pw)
Describes the inputs and attributes of this relational expression.
|
RexNode |
getAfter() |
@Nullable RexNode |
getInterval() |
com.google.common.collect.ImmutableMap<String,RexNode> |
getMeasures() |
RelCollation |
getOrderKeys() |
ImmutableBitSet |
getPartitionKeys() |
RexNode |
getPattern() |
com.google.common.collect.ImmutableMap<String,RexNode> |
getPatternDefinitions() |
com.google.common.collect.ImmutableMap<String,SortedSet<String>> |
getSubsets() |
boolean |
isAllRows() |
boolean |
isStrictEnd() |
boolean |
isStrictStart() |
childrenAccept, deriveRowType, estimateRowCount, getInput, getInputs, replaceInputaccept, accept, collectVariablesSet, collectVariablesUsed, computeSelfCost, copy, 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 final RexNode pattern
protected final boolean strictStart
protected final boolean strictEnd
protected final boolean allRows
protected final RexNode after
protected final com.google.common.collect.ImmutableMap<String,RexNode> patternDefinitions
protected final Set<Match.RexMRAggCall> aggregateCalls
protected final Map<String,SortedSet<Match.RexMRAggCall>> aggregateCallsPreVar
protected final ImmutableBitSet partitionKeys
protected final RelCollation orderKeys
protected final @Nullable RexNode interval
protected Match(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, RelDataType rowType, RexNode pattern, boolean strictStart, boolean strictEnd, Map<String,RexNode> patternDefinitions, Map<String,RexNode> measures, RexNode after, Map<String,? extends SortedSet<String>> subsets, boolean allRows, ImmutableBitSet partitionKeys, RelCollation orderKeys, @Nullable RexNode interval)
cluster - ClustertraitSet - Trait setinput - Input relational expressionrowType - Row typepattern - Regular expression that defines pattern variablesstrictStart - Whether it is a strict start patternstrictEnd - Whether it is a strict end patternpatternDefinitions - Pattern definitionsmeasures - Measure definitionsafter - After match definitionssubsets - Subsets of pattern variablesallRows - Whether all rows per match (false means one row per match)partitionKeys - Partition by columnsorderKeys - Order by columnsinterval - Interval definition, null if WITHIN clause is not definedpublic RexNode getAfter()
public RexNode getPattern()
public boolean isStrictStart()
public boolean isStrictEnd()
public boolean isAllRows()
public com.google.common.collect.ImmutableMap<String,RexNode> getPatternDefinitions()
public ImmutableBitSet getPartitionKeys()
public RelCollation getOrderKeys()
public @Nullable RexNode getInterval()
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 writerCopyright © 2012-2022 Apache Software Foundation. All Rights Reserved.