public final class LogicalFilter extends Filter
Filter
not targeted at any particular engine or calling convention.RelNode.Context
Modifier and Type | Field and Description |
---|---|
private com.google.common.collect.ImmutableSet<CorrelationId> |
variablesSet |
digest, id, rowType, traitSet
Constructor and Description |
---|
LogicalFilter(RelInput input)
Creates a LogicalFilter by parsing serialized output.
|
LogicalFilter(RelOptCluster cluster,
RelNode child,
RexNode condition)
Deprecated.
|
LogicalFilter(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode child,
RexNode condition)
Deprecated.
|
LogicalFilter(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode child,
RexNode condition,
com.google.common.collect.ImmutableSet<CorrelationId> variablesSet)
Creates a LogicalFilter.
|
Modifier and Type | Method and Description |
---|---|
RelNode |
accept(RelShuttle shuttle)
Accepts a visit from a shuttle.
|
LogicalFilter |
copy(RelTraitSet traitSet,
RelNode input,
RexNode condition) |
static LogicalFilter |
create(RelNode input,
RexNode condition)
Creates a LogicalFilter.
|
static LogicalFilter |
create(RelNode input,
RexNode condition,
com.google.common.collect.ImmutableSet<CorrelationId> variablesSet)
Creates a LogicalFilter.
|
RelWriter |
explainTerms(RelWriter pw)
Describes the inputs and attributes of this relational expression.
|
java.util.Set<CorrelationId> |
getVariablesSet()
Returns the variables that are set in this relational
expression but also used and therefore not available to parents of this
relational expression.
|
accept, computeSelfCost, copy, estimateFilteredRows, estimateFilteredRows, estimateRowCount, getChildExps, getCondition, isValid
childrenAccept, deriveRowType, getInput, getInputs, replaceInput
collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, explain, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getQuery, getRelTypeName, getRows, getRowType, getTable, getTraitSet, getVariablesStopped, isDistinct, isKey, isValid, metadata, onRegister, recomputeDigest, register, sole, toString
private final com.google.common.collect.ImmutableSet<CorrelationId> variablesSet
public LogicalFilter(RelOptCluster cluster, RelTraitSet traitSet, RelNode child, RexNode condition, com.google.common.collect.ImmutableSet<CorrelationId> variablesSet)
Use create(org.apache.calcite.rel.RelNode, org.apache.calcite.rex.RexNode)
unless you know what you're doing.
cluster
- Cluster that this relational expression belongs tochild
- Input relational expressioncondition
- Boolean expression which determines whether a row is
allowed to passvariablesSet
- Correlation variables set by this relational expression
to be used by nested expressions@Deprecated public LogicalFilter(RelOptCluster cluster, RelTraitSet traitSet, RelNode child, RexNode condition)
@Deprecated public LogicalFilter(RelOptCluster cluster, RelNode child, RexNode condition)
public LogicalFilter(RelInput input)
public static LogicalFilter create(RelNode input, RexNode condition)
public static LogicalFilter create(RelNode input, RexNode condition, com.google.common.collect.ImmutableSet<CorrelationId> variablesSet)
public java.util.Set<CorrelationId> getVariablesSet()
RelNode
Note: only Correlate
should set
variables.
getVariablesSet
in interface RelNode
getVariablesSet
in class AbstractRelNode
public LogicalFilter copy(RelTraitSet traitSet, RelNode input, RexNode condition)
public RelNode accept(RelShuttle shuttle)
RelNode
accept
in interface RelNode
accept
in class AbstractRelNode
shuttle
- Shuttlepublic RelWriter explainTerms(RelWriter pw)
AbstractRelNode
super.explainTerms
, then call the
RelWriter.input(String, RelNode)
and
RelWriterImpl.item(String, Object)
methods for each input and attribute.explainTerms
in class Filter
pw
- Plan writerCopyright © 2012–2019 The Apache Software Foundation. All rights reserved.