查看: 2657|回复: 3

[性能调整] Oracle语句性能优化问题,求大神指点

[复制链接]
论坛徽章:
0
发表于 2010-12-20 16:27 | 显示全部楼层 |阅读模式
有如下语句,红色部分不加,则查询速度很快,加了则需要50s左右,表中REPORTDATE ,YWORDER,UPLOADTIME均建立了单体索引,scantype 是否建立索引都速度一样。
求各位兄弟分析原因。本人对于性能优化是个初学者,求喷
select *  from t_yw_rep_jskc_detail T
   where  REPORTDATE between   to_date('2010-12-19','yyyy-mm-dd')  and  to_date('2010-12-19','yyyy-mm-dd') and
          scantype in ('AF','DF')  AND
          exists (    SELECT  1 FROM t_yw_rep_jskc_detail C
                          WHERE  C.REPORTDATE = T.Reportdate and  C.scantype ='AR'
                                   and T.YWORDER=C.YWORDER   
                                   AND T.UPLOADTIME<=C.UPLOADTIME
                                    and   t.site=C.site
                                 )


表结构如下:
create table T_YW_REP_JSKC_DETAIL
(
  SYSID            CHAR(2),
  REPORTDATE       DATE not null,
  GUEST            VARCHAR2(40),
  GUEST_NAME       VARCHAR2(60),
  GUEST_SIMNAME    VARCHAR2(30),
  PCS              NUMBER default 0 not null,
  ORDERTYPE        VARCHAR2(40) not null,
  GUEST_FNUMBER    VARCHAR2(30),
  NEWSITE          VARCHAR2(40),
  NEWSITE_FNUMBER  VARCHAR2(40),
  NEWSITE_NAME     VARCHAR2(60),
  YWORDER          VARCHAR2(40),
  TRANSORDER       VARCHAR2(40),
  ORDERTIME        DATE,
  ORDERNUMBER      VARCHAR2(50),
  SENDSITE         VARCHAR2(40) not null,
  SENDSITE_NAME    VARCHAR2(30),
  GOODS            VARCHAR2(400),
  LARGESS          VARCHAR2(200),
  WEIGHT           NUMBER(18,6) default 0 not null,
  FACTOR           VARCHAR2(40) default '无',
  TERMINI          VARCHAR2(40) default '无',
  FACTOR_NAME      VARCHAR2(100),
  TERMINI_NAME     VARCHAR2(30),
  ORDERTYPE_NAME   VARCHAR2(40) not null,
  SENDSTATE        VARCHAR2(50),
  SENDSTATE_NAME   VARCHAR2(50),
  BACKSTATE        VARCHAR2(40),
  BACKSTATE_NAME   VARCHAR2(40),
  PAYMETHOD        VARCHAR2(40) not null,
  PAYMETHOD_NAME   VARCHAR2(40) not null,
  AGENCYFUND       NUMBER(18,6) default 0 not null,
  SUPPORTVALUE     NUMBER(18,6) default 0 not null,
  RECIPIENTS       VARCHAR2(50),
  RECADDRESS       VARCHAR2(100) not null,
  RECREQUEST       VARCHAR2(400),
  RECTEL           VARCHAR2(100),
  YWORDERSYSNUMBER VARCHAR2(40) not null,
  REMARKS          VARCHAR2(400),
  PACKAGESORT      VARCHAR2(40),
  PACKAGESORT_NAME VARCHAR2(40),
  SITE             VARCHAR2(40),
  SITE_NAME        VARCHAR2(30),
  SCANTYPE         VARCHAR2(40),
  SCANTIME         DATE,
  UPLOADTIME       DATE,
  SYSNUMBER        VARCHAR2(40) not null,
  SCANTYPE_NAME    VARCHAR2(40)
)
tablespace ABC_YW_REPORT
  pctfree 10
  initrans 1
  maxtrans 255
  storage
  (
    initial 16K
    minextents 1
    maxextents unlimited
  );
认证徽章
论坛徽章:
9
ITPUB社区OCM联盟徽章
日期:2013-03-27 11:17:11奥运纪念徽章
日期:2013-06-18 09:13:52ITPUB社区千里马徽章
日期:2013-08-22 09:58:03大众
日期:2013-08-30 14:51:33路虎
日期:2013-12-01 18:25:42
发表于 2010-12-20 16:32 | 显示全部楼层
查看执行计划的 变化。。
C.scantype  应该选择率比较低哈,就 几个固定的值,加不加索引都是全表扫描。

使用道具 举报

回复
论坛徽章:
86
2015中国数据库技术大会纪念徽章
日期:2015-04-24 16:04:24马上有车
日期:2014-02-19 11:55:14马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11优秀写手
日期:2013-12-18 09:29:11日产
日期:2013-10-17 08:44:39马自达
日期:2013-08-26 16:28:022013年新春福章
日期:2013-02-25 14:51:24ITPUB 11周年纪念徽章
日期:2012-10-23 16:55:51马上有房
日期:2014-02-19 11:55:14
发表于 2010-12-20 16:37 | 显示全部楼层
统计信息是否准确?贴出执行计划

使用道具 举报

回复
论坛徽章:
0
 楼主| 发表于 2010-12-20 16:44 | 显示全部楼层
嗯,统计信息不准确,受教了。已经搞定

使用道具 举报

回复

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

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会,7折限时优惠重磅来袭!
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。

限时七折期:2019年8月31日前


----------------------------------------

大会官网>>
TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表