public class PushTopNThroughOuterJoin extends Object implements Rule<TopNNode>
- TopN (partial)
- Join (left, right)
- left source
- right source
Into:
- Join
- TopN (present if Join is left, not already limited, and orderBy symbols come from left source)
- left source
- TopN (present if Join is right, not already limited, and orderBy symbols come from right source)
- right source
TODO: this Rule violates the expectation that Rule transformations must preserve the semantics of the expression subtree. It works only because it's a PARTIAL TopN, so there will be a FINAL TopN that "fixes" it.
Rule.Context, Rule.Result| Constructor and Description |
|---|
PushTopNThroughOuterJoin() |
| Modifier and Type | Method and Description |
|---|---|
Rule.Result |
apply(TopNNode parent,
Captures captures,
Rule.Context context) |
Pattern<TopNNode> |
getPattern()
Returns a pattern to which plan nodes this rule applies.
|
public Pattern<TopNNode> getPattern()
RulegetPattern in interface Rule<TopNNode>public Rule.Result apply(TopNNode parent, Captures captures, Rule.Context context)
Copyright © 2012–2019. All rights reserved.