Commit Graph

11 Commits

Author SHA1 Message Date
5a283a98dd plan/executor: make semi joins null and empty aware (#9051) 2019-02-25 15:42:38 +08:00
bc0e70dc5c planner/core: implement skyline pruning (#9337) 2019-02-19 11:19:30 +08:00
09a5c8028e plan: derive col is not null from col op col conditions (#8603)
Check whether the `op` condition is null rejected, if yes, derive
`col is not null` for both sides of inner join, and for inner side
of outer join.

Also, remove duplicate conditions before pushing them down. Check
if the condition is mutable before removing duplicates.

For AntiSemiJoin, AntiLeftOuterSemiJoin and LeftOuterSemiJoin, do
not generate new `is not null` conditions.
2019-01-30 10:53:46 +08:00
776c90fa79 planner: check null and empty for != any(subq) and = all(subq) (#9106) 2019-01-21 16:17:48 +08:00
3c98f69266 *: support select partition for partition table (#8990) 2019-01-14 20:55:52 +08:00
29c17a1eb9 planner/core: correct column name with unary plus sign (#8702) 2018-12-19 23:35:43 +08:00
f33e04f486 expression: make sysdate unfoldable (#7838) 2018-10-08 16:47:45 +08:00
869e20138a plan: refine the handle check to use point get plan for prepare statement (#7732) 2018-09-25 11:32:12 +08:00
7f6babb2b4 plan: fix mistaken conversion from outer join to inner join (#7689)
exclude upper level join conditions from predicates when simplifying
embedded outer join
2018-09-17 13:39:15 +08:00
1bf3f3d407 ranger: refine explain format, again (#7041) 2018-07-17 16:47:44 +08:00
372a6fc921 plan: refine explain result format (#7011) 2018-07-09 13:55:36 +08:00