DB2 Sql性能优化
各位高人,有一个奇怪的问题:
我的sql是几个表的关联查询,类似:
select tab1.col1,tab2.col1,tab2.col2,tab3.colX,tab3.colY
from tab1,tab2,tab3
where tab1.colX=tab2.colY and tab2.colY=tab3.colY
and tab1.xxx.....
由于tab1是很大数据量的表,原来的查询很耗时,为了优化,将tab1单独提出来做成sub-query的形式:
select
innerTab.col1,tab2.col2,tab3.colX....
from
tab2,tab3
(select tab1.col1 from tab1 where tab1.XXX....)As innerTab
where tab2.colY=innerTab.XXX
现在发现innerTab可以跑出来,但是跟其他tab放在一起join就跑不出,而且db2explan显示的执行策略也没有变化,这是怎么回事?难道innerTab不应该是单独的执行策略么?