oracle 一句sql 执行速度特别慢,请指导如何改写,谢谢
答案:1 悬赏:60 手机版
解决时间 2021-04-03 22:53
- 提问者网友:
- 2021-04-03 19:00
oracle 一句sql 执行速度特别慢,请指导如何改写,谢谢
最佳答案
- 五星知识达人网友:第四晚心情
- 2021-04-03 20:24
select f.channel_name,c.name, c.rule_detail,count(1) monthly, rank() over(order by count(1) desc) rank
from cljy.sys_cljy c,channel_paylog_day f where SUBSTr(f.recv_time,1,6)=
to_char(sysdate,'yyyymm') and c.name like'%经典%' and
exists(select count(1) from cljy.sys_pay_prize_target j,nt_staff_channel g where j.device_number=f.serial_number and g.depart_id=f.recv_depart_id) --and rownum <2
group by f.channel_name,c.name,c.rule_detail
先把and rownum <2 注释去掉 能执行成功的话 就没错,老感觉这个语句死循环了。。。测完再回复我,给你看追问谢谢,可以执行,能取到数,执行速度慢原因在...exists(select * from...,把*改成你的count(1)就能很快执行了
from cljy.sys_cljy c,channel_paylog_day f where SUBSTr(f.recv_time,1,6)=
to_char(sysdate,'yyyymm') and c.name like'%经典%' and
exists(select count(1) from cljy.sys_pay_prize_target j,nt_staff_channel g where j.device_number=f.serial_number and g.depart_id=f.recv_depart_id) --and rownum <2
group by f.channel_name,c.name,c.rule_detail
先把and rownum <2 注释去掉 能执行成功的话 就没错,老感觉这个语句死循环了。。。测完再回复我,给你看追问谢谢,可以执行,能取到数,执行速度慢原因在...exists(select * from...,把*改成你的count(1)就能很快执行了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯