日期:2014-05-17  浏览次数:21334 次

3.7 亿条数据,如何处理.求教高手
表PRT_FINALECUSERS(该表3.7亿条数据) : 

create table PRT_FINALECUSERS 
( 
  MSISDN VARCHAR2(15) not null, 
  STARTDATE VARCHAR2(8) not null, 
  ENDDATE VARCHAR2(8) not null, 
  ECCODE VARCHAR2(30) not null, 
  HOSTPROVCODE VARCHAR2(3) not null, 
  STATUS NUMBER(2) not null, 
  SUBSID NUMBER(10) not null 
) 


表TEMPORDERTABLE(目前大概1000多条) 

create table TEMPORDERTABLE 
( 
  ECCODE VARCHAR2(20), 
  ECNAME VARCHAR2(100), 
  SUBSID INTEGER 
) 

目前还未做索引,这么大数据量不知如何做好.我想用以下的语句查询出数据: 

SELECT b.eccode,b.ecname,b.subsid,a.HOSTPROVCODE,count(*) 
FROM prt_finalecusers a 
INNER JOIN tempordertable b 
ON a.subsid=b.subsid 
GROUP BY 
b.eccode,b.ecname,b.subsid,a.HOSTPROVCODE 
ORDER BY 
b.subsid

------解决方案--------------------
表分区 索引
------解决方案--------------------
全表扫描,没有什么好建立.
如果只是针对这个,就在a.subid ,a.HOSTPROVCODE 上建立索引.
就是要建立,也不是那么容易的事情,ORACLE版本也应该比较高些!