[FEAT MERGE]优化器技改patch到432
Co-authored-by: jingtaoye35 <1255153887@qq.com> Co-authored-by: qingzhu521 <q15000557748@gmail.com> Co-authored-by: akaError <lzg020616@163.com>
This commit is contained in:
@ -873,19 +873,19 @@ Query Plan
|
||||
==============================================================================
|
||||
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
|
||||
------------------------------------------------------------------------------
|
||||
|0 |SCALAR GROUP BY | |1 |15 |
|
||||
|1 |└─MERGE ANTI JOIN | |9 |15 |
|
||||
|0 |SCALAR GROUP BY | |1 |17 |
|
||||
|1 |└─MERGE ANTI JOIN | |9 |17 |
|
||||
|2 | ├─TABLE FULL SCAN |table10_bigint |10 |3 |
|
||||
|3 | └─SUBPLAN SCAN |VIEW3 |1 |12 |
|
||||
|4 | └─MERGE ANTI JOIN | |1 |12 |
|
||||
|3 | └─SUBPLAN SCAN |VIEW3 |1 |14 |
|
||||
|4 | └─MERGE ANTI JOIN | |1 |14 |
|
||||
|5 | ├─TABLE FULL SCAN |table2_bigint |2 |3 |
|
||||
|6 | └─SORT | |2 |9 |
|
||||
|7 | └─SUBPLAN SCAN |VIEW2 |2 |9 |
|
||||
|8 | └─NESTED-LOOP JOIN | |2 |9 |
|
||||
|9 | ├─SUBPLAN SCAN |VIEW4 |1 |3 |
|
||||
|10| │ └─SCALAR GROUP BY | |1 |3 |
|
||||
|11| │ └─SUBPLAN SCAN |VIEW1 |1 |3 |
|
||||
|12| │ └─TABLE FULL SCAN|table100_bigint|1 |3 |
|
||||
|6 | └─SORT | |2 |12 |
|
||||
|7 | └─SUBPLAN SCAN |VIEW2 |2 |12 |
|
||||
|8 | └─NESTED-LOOP JOIN | |2 |12 |
|
||||
|9 | ├─SUBPLAN SCAN |VIEW4 |1 |5 |
|
||||
|10| │ └─SCALAR GROUP BY | |1 |5 |
|
||||
|11| │ └─SUBPLAN SCAN |VIEW1 |1 |5 |
|
||||
|12| │ └─TABLE FULL SCAN|table100_bigint|1 |5 |
|
||||
|13| └─TABLE FULL SCAN |table100_bigint|100 |4 |
|
||||
==============================================================================
|
||||
Outputs & filters:
|
||||
@ -939,20 +939,20 @@ Query Plan
|
||||
==================================================================================
|
||||
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
|
||||
----------------------------------------------------------------------------------
|
||||
|0 |SUBPLAN FILTER | |1 |17 |
|
||||
|1 |├─SUBPLAN SCAN |VIEW5 |1 |15 |
|
||||
|2 |│ └─SCALAR GROUP BY | |1 |15 |
|
||||
|3 |│ └─MERGE ANTI JOIN | |9 |15 |
|
||||
|0 |SUBPLAN FILTER | |1 |22 |
|
||||
|1 |├─SUBPLAN SCAN |VIEW5 |1 |20 |
|
||||
|2 |│ └─SCALAR GROUP BY | |1 |20 |
|
||||
|3 |│ └─MERGE ANTI JOIN | |9 |19 |
|
||||
|4 |│ ├─TABLE FULL SCAN |table10_bigint |10 |3 |
|
||||
|5 |│ └─SORT | |1 |12 |
|
||||
|6 |│ └─SUBPLAN SCAN |VIEW3 |1 |12 |
|
||||
|7 |│ └─HASH RIGHT ANTI JOIN NA | |1 |12 |
|
||||
|8 |│ ├─SUBPLAN SCAN |VIEW2 |1 |9 |
|
||||
|9 |│ │ └─NESTED-LOOP JOIN | |1 |9 |
|
||||
|10|│ │ ├─SUBPLAN SCAN |VIEW4 |1 |3 |
|
||||
|11|│ │ │ └─SCALAR GROUP BY | |1 |3 |
|
||||
|12|│ │ │ └─SUBPLAN SCAN |VIEW1 |1 |3 |
|
||||
|13|│ │ │ └─TABLE FULL SCAN|table100_bigint|1 |3 |
|
||||
|5 |│ └─SORT | |1 |16 |
|
||||
|6 |│ └─SUBPLAN SCAN |VIEW3 |1 |16 |
|
||||
|7 |│ └─HASH RIGHT ANTI JOIN NA | |1 |16 |
|
||||
|8 |│ ├─SUBPLAN SCAN |VIEW2 |1 |14 |
|
||||
|9 |│ │ └─NESTED-LOOP JOIN | |1 |14 |
|
||||
|10|│ │ ├─SUBPLAN SCAN |VIEW4 |1 |7 |
|
||||
|11|│ │ │ └─SCALAR GROUP BY | |1 |7 |
|
||||
|12|│ │ │ └─SUBPLAN SCAN |VIEW1 |1 |7 |
|
||||
|13|│ │ │ └─TABLE FULL SCAN|table100_bigint|1 |7 |
|
||||
|14|│ │ └─TABLE FULL SCAN |table100_bigint|100 |4 |
|
||||
|15|│ └─TABLE FULL SCAN |table2_bigint |2 |3 |
|
||||
|16|└─TOP-N SORT | |1 |3 |
|
||||
|
||||
@ -197,35 +197,48 @@ explain select 1 from t2 where
|
||||
c2 in (select 1 from t3, t2) and
|
||||
c1 in (select convert(c6,char(1)) from t2);
|
||||
Query Plan
|
||||
==============================================================
|
||||
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
|
||||
--------------------------------------------------------------
|
||||
|0 |HASH SEMI JOIN | |1 |5 |
|
||||
|1 |├─NESTED-LOOP JOIN CARTESIAN | |1 |3 |
|
||||
|2 |│ ├─TABLE FULL SCAN |t2 |1 |3 |
|
||||
|3 |│ └─MATERIAL | |1 |3 |
|
||||
|4 |│ └─SUBPLAN SCAN |VIEW1|1 |3 |
|
||||
|5 |│ └─TABLE FULL SCAN |t3 |1 |3 |
|
||||
|6 |└─TABLE FULL SCAN |t2 |1 |3 |
|
||||
==============================================================
|
||||
================================================================
|
||||
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
|
||||
----------------------------------------------------------------
|
||||
|0 |HASH SEMI JOIN | |1 |5 |
|
||||
|1 |├─NESTED-LOOP JOIN CARTESIAN | |1 |3 |
|
||||
|2 |│ ├─NESTED-LOOP JOIN CARTESIAN | |1 |3 |
|
||||
|3 |│ │ ├─TABLE FULL SCAN |t2 |1 |3 |
|
||||
|4 |│ │ └─MATERIAL | |1 |3 |
|
||||
|5 |│ │ └─SUBPLAN SCAN |VIEW1|1 |3 |
|
||||
|6 |│ │ └─TABLE FULL SCAN |t3 |1 |3 |
|
||||
|7 |│ └─MATERIAL | |1 |3 |
|
||||
|8 |│ └─SUBPLAN SCAN |VIEW2|1 |3 |
|
||||
|9 |│ └─TABLE FULL SCAN |t2 |1 |3 |
|
||||
|10|└─TABLE FULL SCAN |t2 |1 |3 |
|
||||
================================================================
|
||||
Outputs & filters:
|
||||
-------------------------------------
|
||||
0 - output([1]), filter(nil), rowset=16
|
||||
equal_conds([cast(t2.c1, VARCHAR(1048576)) = cast(cast(t2.c6, CHAR(1)), VARCHAR(1048576))]), other_conds(nil)
|
||||
1 - output([t2.c1]), filter(nil), rowset=16
|
||||
conds(nil), nl_params_(nil), use_batch=false
|
||||
2 - output([t2.c1]), filter([cast(1, DECIMAL(1, 0)) = cast(t2.c2, DECIMAL(-1, -1))]), rowset=16
|
||||
2 - output([t2.c1]), filter(nil), rowset=16
|
||||
conds(nil), nl_params_(nil), use_batch=false
|
||||
3 - output([t2.c1]), filter([cast(t2.c2, DECIMAL(-1, -1)) = cast(1, DECIMAL(1, 0))]), rowset=16
|
||||
access([t2.c2], [t2.c1]), partitions(p0)
|
||||
is_index_back=false, is_global_index=false, filter_before_indexback[false],
|
||||
range_key([t2.__pk_increment]), range(MIN ; MAX)always true
|
||||
3 - output(nil), filter(nil), rowset=16
|
||||
4 - output(nil), filter(nil), rowset=16
|
||||
5 - output(nil), filter(nil), rowset=16
|
||||
access(nil)
|
||||
5 - output([1]), filter(nil), rowset=16
|
||||
6 - output([1]), filter(nil), rowset=16
|
||||
access(nil), partitions(p0)
|
||||
limit(1), offset(nil), is_index_back=false, is_global_index=false,
|
||||
range_key([t3.__pk_increment]), range(MIN ; MAX)always true
|
||||
6 - output([t2.c6]), filter(nil), rowset=16
|
||||
7 - output(nil), filter(nil), rowset=16
|
||||
8 - output(nil), filter(nil), rowset=16
|
||||
access(nil)
|
||||
9 - output([1]), filter(nil), rowset=16
|
||||
access(nil), partitions(p0)
|
||||
limit(1), offset(nil), is_index_back=false, is_global_index=false,
|
||||
range_key([t2.__pk_increment]), range(MIN ; MAX)always true
|
||||
10 - output([t2.c6]), filter(nil), rowset=16
|
||||
access([t2.c6]), partitions(p0)
|
||||
is_index_back=false, is_global_index=false,
|
||||
range_key([t2.__pk_increment]), range(MIN ; MAX)always true
|
||||
|
||||
Reference in New Issue
Block a user