|  | 
 
| 如题:我想从一个表A里面随机抽取一条记录,我用了两种方法,但得到的结果完全不同,请教各位大虾:
 
 
 方法一:
 select * from tableA where rownum < 2 order by dbms_random.random;
 
 方法二:
 select * from (select * from tableA order by dbms_random.random) where rownum < 2;
 
 
 方法一每次都筛选出同一条记录
 方法二每次都筛选出不同的记录
 
 请问为什么第一种方法就不行呢?按道理两种方法都是先随机排序,再筛选。为什么第一种方法就不行呢?
 | 
 |