社区
Sybase
帖子详情
如何在ORACLE数据库中随机选取一条记录?
Mark_zheng
2001-10-18 08:38:13
如题
...全文
353
2
打赏
收藏
如何在ORACLE数据库中随机选取一条记录?
如题
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhuzhichao
2001-10-18
打赏
举报
回复
SQL Server有rand函數,而Oracle沒有,於是本人寫了一個rand
有些牽強,而且取得的隨機數還是有很大的規律,抱歉.
create or replace Function RAND
(in_value in int default 1)
RETURN float IS
-- MODIFICATION HISTORY
-- Person Date Comments
-- zhuzhichao 2001/10/18 取得隨機數
return_value float;
-- Declare program variables as shown above
BEGIN
select (to_number(to_char(sysdate,'SS')) + 1) / 60 * in_value into return_value from dual ;
--利用秒數來得到隨機數,return_value的值域為(0,in_value],大於0,小於等於in_value
RETURN return_value ;
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('Error ---------------' || sqlcode || ' : ' || sqlerrm );
END; -- Function RAND
然後在Oracle8.15及之上版本中可以這麼寫來從TableName表中隨機提取一條紀錄:
select * from
(select rownum r,b.* from TableName b) tt
where tt.r=ceil(rand()*(select max(rownum) from TableName));
zhuzhichao
2001-10-18
打赏
举报
回复
上午太忙了,至少在中午之前給你個答案.
BTW:
用where rownum = 隨機數
是不行的,如果'隨機數'大於1的話,
Oracle將提不出數據.
php网络开发完全手册
15.3.5 获得结果集
中
的某
一条
记录
244 15.3.6 逐行获取结果集
中
的每
一条
15.3.6
记录
245 15.3.7 结果集的分页 248 15.3.8 用户动态添加
记录
249 15.3.9 用户动态更新
记录
251 15.3.10 用户动态删除
记录
253 15.4 ...
C#.net_经典编程例子400个
81 实例068 在ListView控件
中
对数据排序或统计 83 实例069 在ListView控件
中
绘制底纹 84 实例070 在列表视图
中
拖动视图项 85 实例071 用ListView控件
选取
整行数据 88 实例072 用ListView...
oracle
如何只取字段第一个值,
Oracle
数据库
之
Oracle
数据库
随机
取某条
记录
的一个字段值...
本文主要向大家介绍了
Oracle
数据库
之
Oracle
数据库
随机
取某条
记录
的一个字段值,通过具体的内容向大家展现,希望对大家学习
Oracle
数据库
有所帮助。思路:先将取出的值
随机
排序,然后在
随机
排序的每次取第
一条
的结果...
Oracle
数据库
:
随机
查询100条数据
方法一: SELECT m.* FROM (SELECT u.* FROM USER_INFO u order by dbms_random.value()) m where rownum < 100; 注:USER_INFO约40w条数据. 方法二: SELECT * FROM USER_INFO SAMPLE(50) WHERE ...
oracle
使从表
中
随机
取出一行
记录
数据
随机
取
一条
,锁住
记录
,操作完archive_flag = 'Y'不会再取。
Sybase
2,596
社区成员
25,614
社区内容
发帖
与我相关
我的任务
Sybase
Sybase相关技术讨论区
复制链接
扫一扫
分享
社区描述
Sybase相关技术讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章