+ -
当前位置:首页 → 问答吧 → 大型表行数据的存取,太慢了,怎么优化,,

大型表行数据的存取,太慢了,怎么优化,,

时间:2011-12-07

来源:互联网

SELECT T2.RELATED_BSCNAME AS BSC_NAME,
  T2.bts AS BTS_ID,
  T2.cell AS CELL_ID,
  T2.CHINA_NAME AS BTS_NAME,
  '' AS SUMDORTCH,
  '' AS SUMDOFTCH,
  '' AS SUMTIMES,
  '' AS SUMSUC,
  '' AS SUMEQU,
  '' AS SPACE
  FROM collect T1, cell T2
 WHERE (T1.cellidone = T2.ne_sys_id OR T1.cellidtwo = T2.ne_sys_id OR
  T1.cellidthree = T2.ne_sys_id)
  AND T1.City_Id = T2.City_Id
  AND T1.hotmark = '500046'
  AND T1.dataproducetime = TO_DATE('2011-11-14', 'yyyy-mm-dd')
  AND T1.CITY_ID IN (768)
  AND T1.HP_TYPE IN ('学校')
 GROUP BY T2.ne_sys_id, T2.RELATED_BSCNAME, T2.bts, T2.cell, T2.CHINA_NAME

作者: lvhe110   发布时间: 2011-12-07

这条语句慢的时候要20秒以上,,求大牛帮忙优化一下

作者: lvhe110   发布时间: 2011-12-07

执行计划

作者: java3344520   发布时间: 2011-12-07

给你以下建议:1.先用执行计划看下
  2.创建表字段的索引

作者: lfz860110   发布时间: 2011-12-07

AND T1.hotmark = '500046'
  AND T1.dataproducetime = TO_DATE('2011-11-14', 'yyyy-mm-dd')
  AND T1.CITY_ID IN (768)
  AND T1.HP_TYPE IN ('学校')

这3个条件是在程序里面添加的。 
没搞过执行计划。。 能不能给个多表的执行计划我看看?

作者: lvhe110   发布时间: 2011-12-07

你在表里面把相关的查询条件都建一个索引。。

作者: ulihss   发布时间: 2011-12-07