sql优化 帮助

[复制链接]
查看11 | 回复3 | 2009-3-5 17:18:57 | 显示全部楼层 |阅读模式
select *
from PDC_OS_JOBpdcosjob0_,
BYR_NAMEbyrname1_,
CUS_NAME_ADDR cusnameadd2_,
PDC_MST pdcmst3_
where pdcosjob0_.PD_NO = pdcmst3_.PD_NO
and byrname1_.BYR_CTRY = pdcmst3_.BYR_CTRY
and byrname1_.BYR_CODE = pdcmst3_.BYR_CODE
and byrname1_.NAME_TYPE = 'M'
and cusnameadd2_.CUS_NO = pdcmst3_.PCY_NO
and cusnameadd2_.REC_TYPE = 'C'
and cusnameadd2_.NAME_TYPE = 'N'
and (pdcosjob0_.STS in ('N', 'I'))
and (pdcosjob0_.JOB_TYPE in ('PDOB'))

94行记录,28.251秒
select *
from PDC_OS_JOBpdcosjob0_,
BYR_NAMEbyrname1_,
CUS_NAME_ADDR cusnameadd2_,
PDC_MST pdcmst3_
where pdcosjob0_.PD_NO = pdcmst3_.PD_NO
and byrname1_.BYR_CTRY = pdcmst3_.BYR_CTRY
and byrname1_.BYR_CODE = pdcmst3_.BYR_CODE
and byrname1_.NAME_TYPE = 'M'
and cusnameadd2_.CUS_NO = pdcmst3_.PCY_NO
and cusnameadd2_.REC_TYPE = 'C'
------and cusnameadd2_.NAME_TYPE = 'N'
and (pdcosjob0_.STS in ('N', 'I'))
and (pdcosjob0_.JOB_TYPE in ('PDOB'))
去掉一个条件,519行,3.5秒,
cus_name_addr的name_type纪录情况
select t.name_type, count(*) from cus_name_addr t
group by t.name_type
1J386
2N4360
3T6
4
12999
可以看到大部分是空值。
建立索引
cusnameadd2_.NAME_TYPE建立bitmap索引, 94行记录,28.3秒
cusnameadd2_.NAME_TYPE建立normal(不是唯一)索引, 94行记录,14.5秒
请问大家,如何再次优化这个sql?
thanks.
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
试一试!
select *
from PDC_OS_JOBpdcosjob0_,
BYR_NAMEbyrname1_,
CUS_NAME_ADDR cusnameadd2_,
PDC_MST pdcmst3_
where pdcosjob0_.PD_NO = pdcmst3_.PD_NO
and byrname1_.BYR_CTRY = pdcmst3_.BYR_CTRY
and byrname1_.BYR_CODE = pdcmst3_.BYR_CODE
and cusnameadd2_.CUS_NO = pdcmst3_.PCY_NO
and byrname1_.NAME_TYPE = 'M'
and cusnameadd2_.REC_TYPE = 'C'
and pdcosjob0_.STS in ('N', 'I')
and pdcosjob0_.JOB_TYPE = 'PDOB'
and cusnameadd2_.NAME_TYPE is not null
and cusnameadd2_.NAME_TYPE = 'N';
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
把执行计划贴一下~~~
不一定就是cus_name_addr 制约,有可能是其它表关联查询条件走的路径不对
回复

使用道具 举报

千问 | 2009-3-5 17:18:57 | 显示全部楼层
已经解决了,
谢谢大家的帮助,我看了解释计划,还有一个表,是全表扫描,
建了2个索引,解释计划看不到全表扫描了。
0.6秒搞定。
谢谢大家的帮助。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行