直接路径插入表/*+append*/ 直接插入数据的速度测试

两个查数据库中数据执行效率的语句

set autotrace on 跟踪执行计划
set timing on 打开计时

测试 插入的速度


SQL> select count(*) from jxc_grp;

COUNT(*)
----------
172704


SQL> insert into tmp_1 select * from jxc_grp;

172704 rows created.

Elapsed: 00:00:15.63 普通插入数据 15.63 秒


SQL> truncate table tmp_1;

Table truncated.

Elapsed: 00:00:06.24 清空数据


SQL> insert /*+append*/ into tmp_1 select * from jxc_grp nologging;

172704 rows created.

Elapsed: 00:00:06.43

使用快速插入数据的话 6.43 秒


但是10万条一下的数据看不出结果来

SQL> insert into t select * from dba_objects;

51018 rows created.

Elapsed: 00:00:02.18
普通的插入2.18秒


SQL> insert /*+append*/ into t select * from dba_objects nologging;

51018 rows created.

Elapsed: 00:00:02.17

使用了新的特性后的插入 2.17秒

你可能感兴趣的:(sql)