当前位置: 代码迷 >> Oracle开发 >> oracle 怎么随机取一条记录
  详细解决方案

oracle 怎么随机取一条记录

热度:52   发布时间:2016-04-24 07:00:53.0
oracle 如何随机取一条记录
现在有个表,想从中随机取出一条记录 想问下除了 SAMPLE ,还有其他的办法么?我的主键是从序列中生成的。 还有,SAMPLE 这个从表中读取特定百分比的记录 是从全表中随机读取的么,很多资料说 这个取值不平均。
麻烦大家了
Oracle

------解决方案--------------------
不想用sample 就下面这样喽:

select *
  from (select t.*, row_number() over(order by dbms_random.value) rn
          from t) t
 where t.rn = 1;

------解决方案--------------------
这是我用的,5w+数据用时0.13s
SELECT * FROM (SELECT * FROM t_enterprise_info order by dbms_random.value) WHERE rownum =1;
  相关解决方案