You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
I would like an optimizer rule that rewrites queries with EXISTS subqueries as semi-joins See discussion in #2344.
Describe the solution you'd like
See discussion in #2344 for an example.
Describe alternatives you've considered
None
Additional context
None
The text was updated successfully, but these errors were encountered:
I'm currently halfway through implementing this, using heuristic rewrite rules, but I've decided to try to make it more generic as per DuckDB/Hyper's (and also apprently Materialize's) approach, which is to pushdown the dependent join through the subquery until all dependent/correlated predicates have been exfiltrated from the subquery.
This was the intuition which occured to me as the most powerful and complete way after a bit of fiddling around, and thankfully there are trailblazers here.
Edit: I think the more general strategy (dependent join pushdown) may be more complicated and potentially more costly than the alternative. Hence, I think I will try to do the simpler strategy first (filter pullup + pattern match against Exists(Filter(..))) properly, and leave dependent join pushdown to a future endeavour.
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
I would like an optimizer rule that rewrites queries with EXISTS subqueries as semi-joins See discussion in #2344.
Describe the solution you'd like
See discussion in #2344 for an example.
Describe alternatives you've considered
None
Additional context
None
The text was updated successfully, but these errors were encountered: