Class JoinAddRedundantSemiJoinRule

All Implemented Interfaces:
TransformationRule

@Enclosing public class JoinAddRedundantSemiJoinRule extends RelRule<JoinAddRedundantSemiJoinRule.Config> implements TransformationRule
Rule to add a semi-join into a join. Transformation is as follows:

LogicalJoin(X, Y) → LogicalJoin(SemiJoin(X, Y), Y)

Can be configured to match any sub-class of Join, not just LogicalJoin.

See Also: