Package org.apache.calcite.rel.rules
Class SemiJoinRule
- All Implemented Interfaces:
TransformationRule
- Direct Known Subclasses:
SemiJoinRule.JoinOnUniqueToSemiJoinRule,SemiJoinRule.JoinToSemiJoinRule,SemiJoinRule.ProjectToSemiJoinRule
public abstract class SemiJoinRule
extends RelRule<SemiJoinRule.Config>
implements TransformationRule
Planner rule that creates a
SemiJoin from a
Join on top of a
LogicalAggregate or
on a RelNode which is
unique for join's right keys.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceRule configuration.static classSemiJoinRule that matches a Project on top of a Join with a RelNode which is unique for Join's right keys.static classSemiJoinRule that matches a Join with an empty Aggregate as its right input.static classSemiJoinRule that matches a Project on top of a Join with an Aggregate as its right child.Nested classes/interfaces inherited from class org.apache.calcite.plan.RelRule
RelRule.Done, RelRule.MatchHandler<R extends RelOptRule>, RelRule.OperandBuilder, RelRule.OperandDetailBuilder<R extends RelNode>, RelRule.OperandTransformNested classes/interfaces inherited from class org.apache.calcite.plan.RelOptRule
RelOptRule.ConverterRelOptRuleOperand -
Field Summary
Fields inherited from class org.apache.calcite.plan.RelOptRule
description, operands, relBuilderFactory -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedSemiJoinRule(SemiJoinRule.Config config) Creates a SemiJoinRule. -
Method Summary
Methods inherited from class org.apache.calcite.plan.RelOptRule
any, convert, convert, convert, convert, convertList, convertOperand, convertOperand, equals, equals, getOperand, getOperands, getOutConvention, getOutTrait, hashCode, matches, none, onMatch, operand, operand, operand, operand, operand, operandJ, operandJ, some, toString, unordered
-
Constructor Details
-
SemiJoinRule
Creates a SemiJoinRule.
-
-
Method Details
-
perform
protected void perform(RelOptRuleCall call, @Nullable Project project, Join join, RelNode left, Aggregate aggregate)
-