AssHero opened a new issue, #3577:
URL: https://github.com/apache/arrow-datafusion/issues/3577

   **Is your feature request related to a problem or challenge? Please describe 
what you are trying to do.**
   
   examine OR clause for join to see if any useful clauses can be extracted and 
push down. 
   the new clause as join rel's predicate will filter more rows before join.
   
   for such query: 
   select * from test, test1 where (test.a = test1.c and test.b > 1) or (test.b 
= test1.d and test.c < 10);
   
   current logical plan:
   Filter: (a = c and b > 1) or (b = d and c < 10)
        crossjoin:
            TableScan: projection=[a, b, c]
            TableScan: projection=[c, d]
   
   optimized to
   
   Filter: (a = c and b > 1) or (b = d and c < 10)
        crossjoin:
            Filter: (b > 1) or (c < 10)
                  TableScan: projection=[a, b, c]
            TableScan: projection=[c, d]
   
   **Describe the solution you'd like**
   Above
   
   **Describe alternatives you've considered**
   None
   
   **Additional context**
   None
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to