Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support join elimination rule #7704

Closed
zz-jason opened this issue Sep 14, 2018 · 0 comments
Closed

support join elimination rule #7704

zz-jason opened this issue Sep 14, 2018 · 0 comments
Assignees
Labels
sig/planner SIG: Planner type/enhancement The issue or PR belongs to an enhancement.
Milestone

Comments

@zz-jason
Copy link
Member

Feature Request

Describe the feature you'd like:

Three kinds of join eliminations:

  1. inner join elimination. Since it's based on the foreign key constraint, no need to consider it in TiDB
  2. outer join elimination. For example left outer join, if the parent only use the columns from left table and the join key of right table(the inner table) is a unique key of the right table. the left outer join can be eliminated.
  3. outer join elimination with distinct. see the examples in the reference for more detail.

reference:
https://blog.jooq.org/2017/09/01/join-elimination-an-essential-optimiser-feature-for-advanced-sql-usage/

@zz-jason zz-jason added type/enhancement The issue or PR belongs to an enhancement. sig/planner SIG: Planner labels Sep 14, 2018
@zz-jason zz-jason added this to the 2.1 milestone Sep 14, 2018
@zz-jason zz-jason self-assigned this Sep 14, 2018
@lzmhhh123 lzmhhh123 assigned lzmhhh123 and unassigned zz-jason Oct 17, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
sig/planner SIG: Planner type/enhancement The issue or PR belongs to an enhancement.
Projects
None yet
Development

No branches or pull requests

2 participants