public final class LogicalCorrelate extends Correlate
It behaves like a kind of Join
,
but works by setting variables in its environment and restarting its
right-hand input.
A LogicalCorrelate is used to represent a correlated query. One implementation strategy is to de-correlate the expression.
CorrelationId
RelNode.Context
correlationId, joinType, requiredColumns
digest, id, rowType, traitSet
Constructor and Description |
---|
LogicalCorrelate(RelInput input)
Creates a LogicalCorrelate by parsing serialized output.
|
LogicalCorrelate(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType)
Creates a LogicalCorrelate.
|
LogicalCorrelate(RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
SemiJoinType joinType)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
RelNode |
accept(RelShuttle shuttle)
Accepts a visit from a shuttle.
|
LogicalCorrelate |
copy(RelTraitSet traitSet,
RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType) |
static LogicalCorrelate |
create(RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
JoinRelType joinType)
Creates a LogicalCorrelate.
|
static LogicalCorrelate |
create(RelNode left,
RelNode right,
CorrelationId correlationId,
ImmutableBitSet requiredColumns,
SemiJoinType joinType)
Deprecated.
|
computeSelfCost, copy, deriveRowType, explainTerms, getCorrelationId, getCorrelVariable, getJoinType, getRequiredColumns, getVariablesSet, isValid
childrenAccept, getInputs, getLeft, getRight, replaceInput
accept, collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, estimateRowCount, explain, getChildExps, getCluster, getCollationList, getConvention, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getQuery, getRelTypeName, getRows, getRowType, getTable, getTraitSet, getVariablesStopped, isDistinct, isKey, isValid, metadata, onRegister, recomputeDigest, register, sole, toString
public LogicalCorrelate(RelOptCluster cluster, RelTraitSet traitSet, RelNode left, RelNode right, CorrelationId correlationId, ImmutableBitSet requiredColumns, JoinRelType joinType)
cluster
- cluster this relational expression belongs toleft
- left input relational expressionright
- right input relational expressioncorrelationId
- variable name for the row of left inputrequiredColumns
- Required columnsjoinType
- join type@Deprecated public LogicalCorrelate(RelOptCluster cluster, RelTraitSet traitSet, RelNode left, RelNode right, CorrelationId correlationId, ImmutableBitSet requiredColumns, SemiJoinType joinType)
public LogicalCorrelate(RelInput input)
public static LogicalCorrelate create(RelNode left, RelNode right, CorrelationId correlationId, ImmutableBitSet requiredColumns, JoinRelType joinType)
@Deprecated public static LogicalCorrelate create(RelNode left, RelNode right, CorrelationId correlationId, ImmutableBitSet requiredColumns, SemiJoinType joinType)
public LogicalCorrelate copy(RelTraitSet traitSet, RelNode left, RelNode right, CorrelationId correlationId, ImmutableBitSet requiredColumns, JoinRelType joinType)
public RelNode accept(RelShuttle shuttle)
RelNode
accept
in interface RelNode
accept
in class AbstractRelNode
shuttle
- ShuttleCopyright © 2012–2019 The Apache Software Foundation. All rights reserved.