【性能优化】求大神们帮看看这个存储过程怎么优化 cursor 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用了3个loop,而且又用了游标,领导说我用游标,鄙视我 在oracle遇到这种千万级的表扫描,而且又有子表的扫描,通常用什么方式性能比较好? 如果是我来做的话。首先要看看循环里面出来的值域可不可以放到业务处理的条件中,把loop变成一次执行。。如果业务处理必须的一次次操作的话,那只能循环执行。这种情况下就只能优化业务执行的效率了。。你说的扫描,也要看表的字段数来衡量表的量级。。如何效率高看具体执环境、业务执行语句的执行计划,没有绝对优化的sql,只有适合环境的sql 游标可以用bulk collect代替, for循环可以用for all或者merge into代替,我看你的脚本,可以优化成既不用游标,又不用任何for循环就能完成。 大数据量的运算,千万不要用游标,效率低得可怕。直接用sql改写,必要时可以用临时表。 up.......另外也可以考虑用ROWID来操作 bulk collect+for循环了,性能还行,结贴了,谢谢大神们 下载oracle的哪个版本合适 oracel遇到00922错误 急急!!! Visual studio 2005支持Pro*C/C++吗? 在线请教ORACLE语句执行效率问题 帮个忙吧~! 创建view报权限不足的错误 一加主机字符串,就报没有监听 [que]SQL*Loader时,如果同时删除库中的数据参数为什么,如果伏追加参数又是什么 为什么这么慢 请问oracle数据库对象怎么编译? PL/SQL使用问题 sql语句
如果业务处理必须的一次次操作的话,那只能循环执行。这种情况下就只能优化业务执行的效率了。。
你说的扫描,也要看表的字段数来衡量表的量级。。
如何效率高看具体执环境、业务执行语句的执行计划,没有绝对优化的sql,只有适合环境的sql
直接用sql改写,必要时可以用临时表。
另外也可以考虑用ROWID来操作