libenchao commented on PR #2761:
URL: https://github.com/apache/calcite/pull/2761#issuecomment-1090998671

   @NobiGo Thanks for your comment. I didn't notice these two rules before. And 
I tried it in this case, it indeed can handle this.
   However, there are two differences between `JoinPushThroughJoinRule` and my 
proposal:
   1. `JoinPushThroughJoinRule` will reorder the join operands
   2. `JoinConditionPushRule` with my improvement could handle more cases than 
`JoinPushThroughJoinRule`, e.g. `select * from T1, T2 where T1.c1 = T2.c and 
T1.c2 = T2.c`, we can push `T1.c1 = T1.c2` into the left operand of the Join, 
which is more efficient.
   
   And further more, `JoinConditionPushRule` is a more commonly used rule than 
`JoinPushThroughJoinRule`. Hence, IMHO, I think I still would be good to 
improve it. WDYT?


-- 
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]

Reply via email to