Hello, everyone. As the use of materialized views is becoming more and more widespread, it is believed that there will be more users of the materialized view. Now including such as Oracle, Starrocks in the past on the basis of SPJG rewriting gradually support the rewriting of different types of join, i.e. SPOJG(o means outer join) I think we can build on UnifyRule by adding a rewrite between different join types. I actually mentioned this PR about a year ago when I was new to calcite, and didn't know enough about it then, but now I think I'm ready to start over, and before I do so again, I'd like to check out yours thoughts and discussions!
In addition, I just joined the dev list and apologize for asking questions and discussion in jira issues in the past without understanding the community rules, and thank you all for your help! Thank you, suibianwanwan