Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
Description
Currently, only inner joins are supported for materialized view substitutions. The support for outer joins involves creating new pulled up predicates in case of outer joins that represent semantics of the join. For a join predicate like "a.id = b.id" the inner join just pulls up that predicate. When having a left join like e.g. select * from a left join b on a.id = b.id, the actual pulled up predicate would be OR(=(a.id, b.id),ISNULL(b.id)). For a right join it would be OR(=(a.id, b.id),ISNULL(a.id)) and for a full outer join it would be OR(=(a.id, b.id),ISNULL(a.id),ISNULL(b.id))
Attachments
Issue Links
- links to