原帖由 carcase 于 2008-4-8 09:42 发表
SQL> select * from ( select * from tab order by dbms_random.value ) where rownum select * from ( select * from tab order by dbms_random.value ) where rownum select * from ( select * from tab order by dbms_random.value ) where rownum
最近被人问了一个问题,说在100万条记录随机抽10万条,效率最高的是什么方法,
我就想出了一个 select * from (select * from tablename order by dbms_random.random) where rownum < 100001;
不过效率不是很好,有更快点的招没?
原帖由 kelsoncong 于 2008-4-11 16:50 发表
最近被人问了一个问题,说在100万条记录随机抽10万条,效率最高的是什么方法,
我就想出了一个 select * from (select * from tablename order by dbms_random.random) where rownum < 100001;
不过效率不是很好,有更快点的招没?
原帖由 carcase 于 2008-4-8 09:42 发表
SQL> select * from ( select * from tab order by dbms_random.value ) where rownum select * from ( select * from tab order by dbms_random.value ) where rownum select * from ( select * from tab order by dbms_random.value ) where rownum