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 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,
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() |
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, toStringprotected 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 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, 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 RexNode getInterval()
public RelWriter explainTerms(RelWriter pw)
AbstractRelNodesuper.explainTerms, then call the
RelWriter.input(String, RelNode)
and
RelWriterImpl.item(String, Object)
methods for each input and attribute.explainTerms in class SingleRelpw - Plan writerCopyright © 2012-2020 Apache Software Foundation. All Rights Reserved.