Dandandan commented on PR #13184: URL: https://github.com/apache/datafusion/pull/13184#issuecomment-2452970127
> I think for this pushdown to be correct, the join type can be changed. > > I think this can be done in two phases: > > 1. if there is a filter for a left join on a right side (or left side for right join, etc.), the join can be transformed to inner join as the filter will remove all rows without match > 2. the existing filter pushdown will push down the below the inner join Just adding to it, I think supporting this would be relatively simple. Currently eliminate_outer_join only supports columns that are non nullable, we can support expressions that filter out any nulls like most binary operators. https://github.com/apache/datafusion/blob/89e96b404f07900469fee31740f43edd8a410a10/datafusion/optimizer/src/eliminate_outer_join.rs#L175 -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
