为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:1-3-26-2023.07.13-195546-20046-SEC
【操作系统】:
【CPU】:
【问题描述】:
select
lpad(region_temp.name , length(region_temp.name) + level * 3, '-') as name_,
CONNECT_BY_ROOT region_temp.short_code as top_region_code,
CONNECT_BY_ROOT region_temp.name as top_region_name,
region_temp.
from (select CODE,NAME,SHORT_CODE,PARENT_CODE, level as level_
from bsp.pub_region t
where t.status = '1'
start with code = '123123'
CONNECT by prior CODE = parent_code) region_temp
where region_temp.name != 'XXXX'
start with region_temp.level_ = '3'
CONNECT by prior CODE = parent_code;
执行计划如下:
1 #NSET2: [1, 1, 240]
2 #PRJT2: [1, 1, 240]; exp_num(8), is_atom(FALSE)
3 #TOPN2: [1, 1, 240]; top_num(1)
4 #SLCT2: [1, 1, 240]; DMTEMPVIEW_890155397.TMPCOL4 <> ' ֱ '
5 #PRJT2: [1, 1, 240]; exp_num(8), is_atom(FALSE)
6 #HIERARCHICAL QUERY: [1, 1, 240]; KEY_NUM(0);
7 #SLCT2: [1, 1, 240]; REGION_TEMP.LEVEL_ = var7
8 #PRJT2: [1, 1, 240]; exp_num(5), is_atom(FALSE)
9 #SLCT2: [1, 1, 240]; DMTEMPVIEW_890155392.TMPCOL2 = '1'
10 #PRJT2: [1, 9, 240]; exp_num(6), is_atom(FALSE)
11 #HIERARCHICAL QUERY: [1, 9, 240]; KEY_NUM(0);
12 #BLKUP2: [1, 1, 240]; INDEX33807789(T)
13 #SSEK2: [1, 1, 240]; scan_type(ASC), INDEX33807789(PUB_REGION as T), scan_range['123123','123123']
14 #SLCT2: [1, 9, 240]; T.PARENT_CODE = var1
15 #CSCN2: [1, 867, 240]; INDEX33807720(PUB_REGION as T)
16 #SLCT2: [1, 1, 240]; REGION_TEMP.PARENT_CODE = var3
17 #PRJT2: [1, 1, 240]; exp_num(5), is_atom(FALSE)
18 #SLCT2: [1, 1, 240]; DMTEMPVIEW_890155392.TMPCOL2 = '1'
19 #PRJT2: [1, 9, 240]; exp_num(6), is_atom(FALSE)
20 #HIERARCHICAL QUERY: [1, 9, 240]; KEY_NUM(0);
21 #BLKUP2: [1, 1, 240]; INDEX33807789(T)
22 #SSEK2: [1, 1, 240]; scan_type(ASC), INDEX33807789(PUB_REGION as T), scan_range['123123','123123']
23 #SLCT2: [1, 9, 240]; T.PARENT_CODE = var1
24 #CSCN2: [1, 867, 240]; INDEX33807720(PUB_REGION as T)
调整参数 CNNTB_OPT_FLAG ,对该语句没有效果
sp_set_para_value(1,‘CNNTB_OPT_FLAG’,1)
数据如下
imp_exp.dmp
在1-3-62-2023.10.11-204277-20067-SEC 和
1-3-62-2023.10.11-204277-20067-SEC
执行只需200毫秒左右,执行计划如下:
1 #NSET2: [14, 20, 710]
2 #PIPE2: [14, 20, 710]
3 #PRJT2: [3, 20, 710]; exp_num(21), is_atom(FALSE)
4 #SLCT2: [3, 20, 710]; DMTEMPVIEW_889213363.TMPCOL4 <> ' ֱ '
5 #PRJT2: [3, 21, 710]; exp_num(21), is_atom(FALSE)
6 #HIERARCHICAL QUERY: [3, 21, 710]; KEY_NUM(1);
7 #SLCT2: [1, 1, 710]; REGION_TEMP.LEVEL_ = var7
8 #HEAP TABLE SCAN: [1, 21, 710]; table_no(0)
9 #HEAP TABLE SCAN: [1, 21, 710]; table_no(0)
10 #HEAP TABLE: [11, 21, 710]; table_no(0) full(0), mpp_full(0) autoid(0), sites(-)
11 #PRJT2: [11, 21, 710]; exp_num(18), is_atom(FALSE)
12 #SLCT2: [11, 21, 710]; DMTEMPVIEW_889213358.TMPCOL2 = '1'
13 #PRJT2: [11, 867, 710]; exp_num(18), is_atom(FALSE)
14 #HIERARCHICAL QUERY: [11, 867, 710]; KEY_NUM(1);
15 #BLKUP2: [1, 1, 710]; INDEX33555465(T)
16 #SSEK2: [1, 1, 710]; scan_type(ASC), INDEX33555465(PUB_REGION as T), scan_range['123123','123123']
17 #CSCN2: [1, 867, 710]; INDEX33555464(PUB_REGION as T); btr_scan(1)
在1-3-26-2023.07.13-195546-20046-SEC这个版本中 ,应该怎么加hint调整?
SQL语句执行报错