1.在连接列上建立索引
2.使用子查询:
(select XXX from IDC_CITIZEN_BASE  where 11=11) cc 
在执行查询语句之前,把针对该表的查询条件替换11=11,其它的表也可以这么做
select aa.DIAG_ID A,
to_char(aa.DIAG_DATE,'YYYY-MM-DD') B,
bb.HIS_NAME C, 
cc.NAME D,
dd.NAME E,
ee.COPT_NAME F 
from CLR_DIAG_CHARGE aa, 
     HIS_INFO bb,
     IDC_CITIZEN_BASE cc,
     DIC_PAYAREA_CODE dd,
     IDC_COOPERATION_INFO ee where aa.CAT0001=bb.HIS_CODE(+) 
  and aa.CAT0002=cc.CITIZEN_ID(+) 
  and aa.CAT0003=dd.PAYAREA_CODE(+) 
  and aa.CAT0004=ee.COPT_ID(+)