XieJiann opened a new pull request, #23028:
URL: https://github.com/apache/doris/pull/23028
## Proposed changes
expand other join:
```
a inner join b on cond1 or cond2 = a inner join b on cond1 union all a inner
join b on cond2 and !cond1
a left anti b on cond1 or cond2 = a left anti b on cond1 left anti b on cond2
a right anti b on cond1 or cond2 = a right anti (a right anti b on cond1) on
cond2
```
for outer join, we can get:
```
a left other join b on cond1 = a inner join b on cond1 union all a left
anti join b on cond1
a left other join b on cond1 = a inner join b on cond1 union all a left
anti join b on cond1 union all a right anti join b on cond1
```
TODO:
we don't support semi-join right now, because the union-all operator can
produce dup tuples.
```
e.g.
A left semi join on cond1 and A left semi join on cond1 and !cond2
There can be one tuple that both satisfy cond1, (cond1 and ! cond2).
```
we should do it after we can get unique column flag
<!--Describe your changes.-->
## Further comments
If this is a relatively large or complex change, kick off the discussion at
[[email protected]](mailto:[email protected]) by explaining why you
chose the solution you did and what alternatives you considered, etc...
--
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]