古宁

导航

Oracle 查询记录是否存在的效率问题

最近要优化Oracle数据库的效率,然后在网上查了很多判断记录是否存在的高效率方法
网上有很多的建议第一种方法,我做了一个测试,但是可能数据量不够大,42667条记录,不知道很大的数据量是什么一个情况

网上好多高效的建议方式
select * from item where item='1B241371X0021' and rownum<2;
但是我测试的结果:
select * from item where item='1B241371X0021' and rownum<2;

1 rows selected in 0.047 seconds

count(*) 方式
select count(*from item where item='1B241371X0021';

1 rows selected in 0.016 seconds

exists方式
select count(*from dual where exists(select 1 from item where item='1B241371X0021');

1 rows selected in 0.015 seconds

从测试的结果看,后两种方式比前一种方式的效率明显要高.

posted on 2009-09-17 12:47  古宁  阅读(1950)  评论(0编辑  收藏  举报