当前位置:Gxlcms > 数据库问题 > Oracle游标进行循环效率比较

Oracle游标进行循环效率比较

时间:2021-07-01 10:21:17 帮助过:4人阅读

对300万一张表数据,用游标进行循环,不同写法的效率比较

对300万一张表数据,用游标进行循环,不同写法的效率比较   1、显示游标   declare     cursor cur_2 is select a.cust_name from ea_cust.cust_info a;     cust_id varchar2(100);      begin     open cur_2;     loop         fetch cur_2 into cust_id;         exit when cur_2%notfound;         NULL;     end loop;     close cur_2; end;   --耗时48秒   2、隐式游标   declare      begin     for cur_2 in (select c.cust_name from ea_cust.cust_info c) loop             NULL;           end loop;   end;   --耗时16秒   3、bulk collect into + cursor   declare     cursor cur_3 is select a.cust_name from ea_cust.cust_info a;     type t_table is table of varchar2(100);     c_table t_table;     to_cust_id varchar2(100);  begin     open cur_3;     loop          fetch cur_3 bulk collect into c_table limit 100;          exit when c_table.count = 0;          for i in c_table.first..c_table.last loop              null;                        end loop;              end loop;     commit; end;   --耗时13秒,看样子这种最快  

Oracle

对300万一张表数据,用游标进行循环,不同写法的效率比较
摘要: 对300万一张表数据,用游标进行循环,不同写法的效率比较1、显示游标declare cursor cur_2 is select a.cust_name from ea_cust.cust_info a; cust_id varchar2(100); begin open cur_2; loop fetch cur_2 into cust_id; exit when cur_2%notfound; NULL; end loop; close cur_2;end;--耗时48秒2、隐式游标declare begin for cur_2 in (select c.c...阅读全文

posted @ 2013-01-06 18:12 Code changes life 阅读(563) | 评论 (0) 编辑

oracle行列转换
摘要: Oracle 行列转换1、固定列数的行列转换如student subject grade--------- ---------- --------student1 语文 80student1 数学 70student1 英语 60student2 语文 90student2 数学 80student2 英语 100……转换为语文 数学 英语student1 80 70 60student2 90 80 100……语句如下:select student,sum(decode(subject,‘语文‘, grade,null)) "语文",sum(decode(阅读全文

posted @ 2013-01-06 16:38 Code changes life 阅读(334) | 评论 (0) 编辑

数据库关联映射建表图示
摘要: ~总结一下数据库的 一对多、多对一、一对一、多对多 关系 以及对应的建表方式~关联映射:一对多/多对一存在最普遍的映射关系,简单来讲就如球员与球队的关系;一对多:从球队角度来说一个球队拥有多个球员 即为一对多多对一:从球员角度来说多个球员属于一个球队 即为多对一数据表间一对多关系如下图:关联映射:一对一一对一关系就如球队与球队所在地址之间的关系,一支球队仅有一个地址,而一个地址区也仅有一支球队。数据表间一对一关系的表现有两种,一种是外键关联,一种是主键关联。图示如下:一对一外键关联:一对一主键关联:要求两个表的主键必须完全一致,通过两个表的主键建立关联关系关联映射:多对多多对多关系也很常见,例阅读全文

posted @ 2013-01-04 17:01 Code changes life 阅读(153) | 评论 (0) 编辑

Oracle中查询正锁表的用户及释放被锁的表的方法
摘要: 查询oracle锁定的表及杀掉锁表的进程,注意查看的时候要用sys/sys 管理员的身份登录1、首先查看锁定的表太进程:SELECT substr(v$lock.sid,1,4) "SID", serial#, V$SESSION.sid, substr(username,1,12) "UserName", substr(object_name,1,25) "ObjectName", v$lock.type "LockType", www.2cto.com decode(rtrim(substr(lmode,1,4阅读全文

posted @ 2012-12-27 14:43 Code changes life 阅读(1551) | 评论 (0) 编辑

oracle小常识
摘要: 一、oracle时间类型的处理1、用sql语句把时间 2010-10-01 09:28:03插入oracle 的date类型字段insert into 表名(字段名) values (to_date(‘2010-10-01 09:28:03‘,‘yyyy-mm-dd hh24:mi:ss‘))2、根据date类型字段查询select * from 表名 where to_char(date类型字段,‘yyyy-mm-dd‘) between ‘2012-03-06‘ and ‘2012-03-08‘二、delete阅读全文

posted @ 2012-03-08 09:13 Code changes life 阅读(106) | 评论 (0) 编辑

分类: Oracle

Oracle游标进行循环效率比较

标签:read   rom   use   desc   分类   end   多个   insert   gpo   

人气教程排行