oracle fetch 速度慢

开发之路 2010-08-05 11:56:24
Oracle一个包里的函数,前几天速度还好,好像也没有改动什么,今天速度变的很慢,我调试进去看,
当执行完游标c1,把c1赋给变量%rowtype,fetch的时候速度很慢,不知道是什么原因,测试时,c1里面只有1条记录,而且查询速度也快。请大家帮忙解决
...全文
844 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
开发之路 2010-08-18
  • 打赏
  • 举报
回复
or v_mcode is null
使索引无效了
minitoy 2010-08-16
  • 打赏
  • 举报
回复
啥原因?
开发之路 2010-08-13
  • 打赏
  • 举报
回复
公司的高手帮忙解决了⊙﹏⊙b汗
开发之路 2010-08-10
  • 打赏
  • 举报
回复
查询的时间很短,游标也退出了
ojuju10 2010-08-06
  • 打赏
  • 举报
回复
select /*+and_equal(a,idx_mrlmcode,idx_mrlrdate,idx_mrlifchk)*/*
from a
where (a.mrlmcode = v_mcode or v_mcode is null) and
a.mrlrdate>=to_date(P_SDATE, 'yyyymmdd')
and a.mrlifchk = v_ifchk
order by a.mrlrdate;
--1、游标所使用的sql语句查询时间为多长?

2、游标有没有退出的语句
exit when cur%notfound;


开发之路 2010-08-06
  • 打赏
  • 举报
回复
索引是不是根本的原因呢,好像不是吧
minitoy 2010-08-05
  • 打赏
  • 举报
回复
查询用的字段上建索引了么?
sql满简单的
开发之路 2010-08-05
  • 打赏
  • 举报
回复
坐等高人啊
开发之路 2010-08-05
  • 打赏
  • 举报
回复
cursor c1(v_mcode varchar2, v_ifchk varchar2) is
select *
from a
where (a.mrlmcode = v_mcode or v_mcode is null) and
a.mrlrdate>=to_date(P_SDATE, 'yyyymmdd')
and a.mrlifchk = v_ifchk
order by a.mrlrdate;

view_mrl meterread_lkg%rowtype;
open c1(P_MICODE, P_ISCHK);
loop
fetch c1 into view_mrl;
luoyoumou 2010-08-05
  • 打赏
  • 举报
回复
把你的函数的代码贴出来看看............
orbcle 2010-08-05
  • 打赏
  • 举报
回复
fetch慢
1.查询慢
不知道你的表数据量,注意你的查询用到了a表的3个字段,如果已经全部建立了单个字段的索引,应该用and_equal提示将3个索引连起来,或者建立复合索引。
select /*+and_equal(a,idx_mrlmcode,idx_mrlrdate,idx_mrlifchk)*/*
from a
where (a.mrlmcode = v_mcode or v_mcode is null) and
a.mrlrdate>=to_date(P_SDATE, 'yyyymmdd')
and a.mrlifchk = v_ifchk
order by a.mrlrdate;

2.你要插入的表有某些字段上的约束存在问题,可以先去掉要插入表的主键,索引再尝试执行该过程。
勇敢的心515 2010-08-05
  • 打赏
  • 举报
回复
不知道,学习/。
开发之路 2010-08-05
  • 打赏
  • 举报
回复
大家帮忙想下可能的原因啊
开发之路 2010-08-05
  • 打赏
  • 举报
回复
sql速度正常,排序当然有用
gaoxuelong 2010-08-05
  • 打赏
  • 举报
回复
单独执行SQL速度如何,还有sql中的排序有什么意义?
开发之路 2010-08-05
  • 打赏
  • 举报
回复
建了一部分索引

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧