oracle随机取数据

***

针对oracle

1,方法一,

select * from (
select * from t_base_menu order by dbms_random.value) 

where rownum<=5

2,方法二

****

时间: 2024-10-16 16:36:55

oracle随机取数据的相关文章

【转】oracle 中随机取数据的方法

oracle 中随机取数据的方法: 1.快速随机取数据(推荐使用): select * from MEMBER sample(1) where rownum <= 10 2.随机取数据,较慢 select * from (  select * from MEMBER order by dbms_random.value) where rownum<=10 ========原文======== 最近在做系统时用到了随机抽取记录的问题: 上网上查找了很多相关资料,发现了不同的方法及其差异.都是基于

mysql实现高效率随机取数据

从数据库中(mysql)随机获取几条数据很简单,但是如果一个表的数据基数很大,比如一千万,从一千万中随机产生10条数据,那就相当慢了,如果同时一百个人访问网站,处理这些个进程,对于一般的服务器来说,肯定是要死机的. mysql数据库获取随机数据的函数rand(),我建议轻易不要用这个,我写博客的时候试了一下,从16万数据里随机获取5条数据,用时14.02秒,这个耗费满惊人的. SELECT * FROM t_share ORDER BY rand() LIMIT 5; 通过mysql最大值函数m

lamda表达式 随机取数据的方法

随机取数据,关键要用到Guid.NewGuid()才可以的,Take(10)表示随机取10条记录 var _icpics = DB.I_FirstRecommend.GetAllList().Where(s => !string.IsNullOrEmpty(s.Scenery)).OrderBy(s => Guid.NewGuid()).Take(10).ToList();//随机只取1图片就可以了

mysql 在数据表中随机取数据或随机排序

最近遇到一个需求,就是随机取数据,本着拿来主义的精神,网上找了找,基本上都是这个下面这个内容,但是并不能让人满意: 1.select * from users order by rand() LIMIT 1 2.SELECT * FROM users  AS t1  JOIN (SELECT ROUND(RAND() * ((SELECT MAX(userId) FROM `users`)-(SELECT MIN(userId) FROM users))+(SELECT MIN(userId)

MySQL 随机取数据效率问题

本文详细解说了MySQL Order By Rand()效率优化的方案,并给出了优化的思路过程,是篇不可多得的MySQL Order By Rand()效率美文. 最近由于需要大概研究了一下MYSQL的随机抽取实现方法.举个例子,要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1. 但是,后来我查了一下MYSQL的官方手册,里面针对RAND()的提示大概意思就是,在ORDER BY从句里面

Oracle 随机取某一列的值

select t.recd_id   from (select recd_id, ROWNUM RN from RT_TICKETS_BIS_RECD) t  where t.RN = (select round(DBMS_RANDOM.VALUE(1, count(1)))                  from RT_TICKETS_BIS_RECD); 1) select round(DBMS_RANDOM.VALUE(1, count(1)))                  fr

MySQL随机获取数据的方法,支持大数据量

最近做项目,需要做一个从mysql数据库中随机取几条数据出来. 总所周知,order by rand 会死人的..因为本人对大数据量方面的只是了解的很少,无解,去找百度老师..搜索结果千篇一律.特发到这里来,供大家学习. 在mysql中带了随机取数据的函数,在mysql中我们会有rand()函数,很多朋友都会直接使用,如果几百条数据肯定没事,如果几万或百万时你会发现,直接使用是错误的.下面我来介绍随机取数据一些优化方法. SELECT * FROM table_name ORDER BY ran

Oracle的trunc和dbms_random.value随机取n条数据

今天在review项目代码的时候看到这样一个问题,有一张号码表,每次需要从这样表中随机取6个空闲的号码,也就是每次取出来的6个号码应该都会有所不同.然后我就看到了这样的SQL select   t.*     from   tel_number_tbl t    where   t.status = '空闲'      and   t.area_code = '0571'      and   t.delete_flg = '未删除'      and   rownum <= 6order by

【转】oracle 中随机取一条记录的两种方法

oracle 中随机取一条记录的两种方法 V_COUNT INT:=0; V_NUM INT :=0; 1:TBL_MYTABLE 表中要有一个值连续且唯一的列FID BEGIN SELECT COUNT(*) INTO V_COUNT FROM  TBL_MYTABLE; SELECT TRUNC(DBMS_RADOM.VALUE(1,V_COUNT+1)) INTO V_NUM FROM DUAL; SELECT * FROM TBL_MYTABLE T WHERE T.FID=V_NUM;