ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle 执行计划

oracle 执行计划

原创 Linux操作系统 作者:飞跃的鱼 时间:2012-09-11 16:50:17 0 删除 编辑
表关联:
ODS_IREAD.IREAD_PAGEVISIT PARTITION(P_20120910)--大致4亿条记录
CX_FUJIE.FUNCT_00 A--大致400w记录
第一种执行计划:
以小表为主:
SELECT *
  FROM CX_FUJIE.FUNCT_00 A,
       ODS_IREAD.IREAD_PAGEVISIT PARTITION(P_20120910) B
 WHERE B.MSISDN = A.MSISDN
   AND TO_CHAR(A.RECORDTIME,'YYYYMMDDHH24') = '2012091001'
 
 
第二种执行计划:
以小表为主,字段函数去除,修改写法。
TO_CHAR(A.RECORDTIME,'YYYYMMDDHH24') = '2012091001'
修改成
   AND A.RECORDTIME >= TO_DATE('2012091001','YYYYMMDDHH24')
   AND A.RECORDTIME < TO_DATE('2012091001','YYYYMMDDHH24')
SELECT *
  FROM CX_FUJIE.FUNCT_00 A,
       ODS_IREAD.IREAD_PAGEVISIT PARTITION(P_20120910) B
 WHERE B.MSISDN = A.MSISDN
   AND A.RECORDTIME >= TO_DATE('2012091001','YYYYMMDDHH24')
   AND A.RECORDTIME < TO_DATE('2012091001','YYYYMMDDHH24')
 
通过执行计划发现第二种最优,由于无测试i库,暂时未作测试。
 
 

2.jpg

3.jpg

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/27121206/viewspace-743168/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2012-07-02

  • 博文量
    4
  • 访问量
    2056