oracle数据库,如何根据概率随机查询取四条数据呢

oracle数据库,如何根据概率随机查询取四条数据呢,第1张

select from tableName sample(10) where rownum<5;

sample(10)代表从tableName 表中随机取到10%的数据 rownum<5 取4条

其实这个问题是这样的,你首先应该用一个array 记录 所有你要 取的数。

比如是一个 1-100的数组

然后你就用随机数 取一个 数组的 位置,比如你 取到了 10,

你就从 这个array 中 ,删除这个数,

然后取随机数的范围缩小一个,因为数组已经是1-99的数组了。

就这样,一直取到最后一个数字

因为取出来的不是整数,所以10也还是不行

这样就好了

round(dbms_randomvalue(1,9),0)10

------------补充----------

刚才思考了一下,我用round四舍五入了最后能取到10-90的数

那位兄弟的trunc能取到10-80的,不过把他里边的9换成10应该就可以了

产生一个介于指定范围之内的38位精度的随机数

SQL> SELECT DBMS_RANDOMVALUE(1, 9999) FROM dual;

DBMS_RANDOMVALUE(1,9999)

-------------------------

426138448

如果你是要一个 4位的整数 (也就是最小1000, 最大 9999)

SELECT TRUNC( DBMS_RANDOMVALUE(1000, 9999) ) FROM dual;

以上就是关于oracle数据库,如何根据概率随机查询取四条数据呢全部的内容,包括:oracle数据库,如何根据概率随机查询取四条数据呢、oracle取随机数问题、oracle 取随机数的问题.等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/sjk/9290802.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存