Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
Description
For instance, given the following query:
SELECT t0.col0, t0.col1 FROM ( SELECT col0, col1 FROM tab ) AS t0 LEFT JOIN ( SELECT col0, col1 FROM tab ) AS t1 ON t0.col0 = t1.col0 AND t0.col1 = t1.col1
we could still infer that col0 and col1 cannot be null in the right input and introduce the corresponding filter predicate. Currently, the rule just bails out if it is not an inner join.
https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HiveJoinAddNotNullRule.java#L79
Attachments
Attachments
Issue Links
- duplicates
-
HIVE-21323 LEFT OUTER JOIN does not generate transitive IS NOT NULL filter on right side
- Closed