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]
