前几天在论坛上看到一个哥们讨论那个SQL语句效率高的问题,第一次看到了执行计划这个东东,然后看了好多关于执行计划的信息,晕的一塌糊涂。oracle水太深,得慢慢来,对这个问题的学习,自己作下记录。
查看执行计划,要在sql语句前加上如下代码
set autotrace on :含查询输出,执行计划,统计信息
set autotrace on exp :只显示执行计划
set autotrace on stat::只显示统计信息
关于执行计划,本人目前就这水平啦,会这两行代码。然后自己就想测一下,就又学到了一条语句,因为要对比明显,那数据量就得大。就学到了如下这语句:
insert into t1 select rownum from dual connect by level<=100000;直接插入10万条,也就是10万条数字。
然后自己就创建了一张表,搞了10万条数据。用了两个语句进行测试,那就是两句分页代码,看看效果。
分页语句
(1)select t.* from (select rownum as num,t1.* from t1)t where num between 30 and 70
(2)select * from (select t.*,rownum as num from (