+ -
当前位置:首页 → 问答吧 → oracle 查询优化

oracle 查询优化

时间:2011-12-22

来源:互联网

请教各位高手,下面这个语句可以进行怎样的优化,两张表的数据都是千万级
select /*+index(t1 TG_CDR11_GS_01) */ t1.MSISDN,t1.IMSI_NUMBER,t1.START_DATE,t1.START_TIME,t1.CFEE,t1.DIS_CFEE from TG_CDR11_GS t1,b
f_gp_call_t t2 where
t1.msisdn = t2.service_id
AND t1.IMSI_NUMBER = t2.IMSI
AND t1.START_DATE = TO_CHAR(t2.BEGIN_CALL_DATE, 'yyyymmdd')
and t1.START_TIME = TO_CHAR(t2.BEGIN_CALL_DATE, 'hh24miss')

作者: htwj1998   发布时间: 2011-12-22

AND t1.IMSI_NUMBER = t2.IMSI
AND t1.START_DATE = TO_CHAR(t2.BEGIN_CALL_DATE, 'yyyymmdd')
and t1.START_TIME = TO_CHAR(t2.BEGIN_CALL_DATE, 'hh24miss')

相关字段建索引,其中t2表的2个字段,建函数索引~~~~

作者: zftang   发布时间: 2011-12-22

请详细描述各表的结构和数据类型。
再有就是各表索引建立情况。

作者: LuiseRADL   发布时间: 2011-12-22

还有这2个表,哪些字段需要经常更新。

作者: LuiseRADL   发布时间: 2011-12-22


这是两张表的索引情况
字段msisdn、service_id、IMSI_NUMBER、IMSI为字符型

作者: htwj1998   发布时间: 2011-12-22

不用更新,就是张结果表
引用 3 楼 luiseradl 的回复:

还有这2个表,哪些字段需要经常更新。

作者: htwj1998   发布时间: 2011-12-22

在t2.BEGIN_CALL_DATE上建立函数索引。

作者: LuiseRADL   发布时间: 2011-12-22