直接试试下面的,看多长时间?cursor cur_qf is
SELECT a.Yhbh,
       a.Yhmc,
       a.Qch,
       Decode(Nvl(a.Ydlb, '5'), '8', '5', Nvl(a.Ydlb, '5')) Ydlb,
       SUM(b.Qfje) Qfje
  FROM Tb_Yd_Yhydxxtz a, Tb_Sf_Yhqftz b
 WHERE a.Yhbh = b.Yhbh
   AND a.Qch LIKE '0201' || '%'
   AND b.Fxny <= To_Date('20050301', 'YYYYMMDD')
   AND Decode(Nvl(a.Ydlb, '5'), '8', '5', Nvl(a.Ydlb, '5')) = '2'
   AND b.Qfje > 0
   AND b.Qfbz <> '3'
 GROUP BY a.Yhbh,
          a.Yhmc,
          a.Qch,
          Decode(Nvl(a.Ydlb, '5'), '8', '5', Nvl(a.Ydlb, '5'))
 ORDER BY Qfje DESC;