Ideally we'll get this addressed in 8.1. There are several aspects that I want to address:
1. Any source queries that appear multiple times in the same plan should reuse the same result, without necessitating a hint or additional configuration.
2. Allow for hint or configuration based caching or source results across queries - this has an independent JIRA.
3. A query hint to indicate that table/view should be turned into a common table expression. This would be like request scoped materialization, but ideally the approach would be smart enough to allow at least criteria and other pushdown as appropriate (for example if one path uses predicate A and another path uses predicate B, then the optimizer would treat that as A OR B in the creation of the common result rather than retrieving the entire view/table contents.)
Ideally we'll get this addressed in 8.1. There are several aspects that I want to address:
1. Any source queries that appear multiple times in the same plan should reuse the same result, without necessitating a hint or additional configuration.
2. Allow for hint or configuration based caching or source results across queries - this has an independent JIRA.
3. A query hint to indicate that table/view should be turned into a common table expression. This would be like request scoped materialization, but ideally the approach would be smart enough to allow at least criteria and other pushdown as appropriate (for example if one path uses predicate A and another path uses predicate B, then the optimizer would treat that as A OR B in the creation of the common result rather than retrieving the entire view/table contents.)