若要在
i
≤
R
≤
j
这个范围得到一个随机整数
R
,需要用到表达式 FLOOR(
i
+ RAND() * (
j
–
i
+ 1))。
例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机整数, 可使用以下语句:
SELECT FLOOR(7 + (RAND() * 6))
原文链接:
http://blog.sina.com.cn/s/blog_73c63c660101tv21.html
若要在i ≤ R ≤ j 这个范围得到一个随机整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1))。例如, 若要在7 到 12 的范围(包括7和12)内得到一个随机整数, 可使用以下语句:SELECT FLOOR(7 + (RAND() * 6))原文链接:http://blog.sina.com.cn/s/blog_73
rand()函数只能生成0到1之间的
随机
小数,如果想要生成0到10,0到100就rand()*相应的
值
。
如果想得到整数就要用到round(x),floor(x)和ceiling(x)。
round(x)是四舍五入 ;
floor...
如何通过
MySQL
在某个数据区间获取
随机数
?
MySQL
本身提供一个叫rand的函数,返回的v
范围
为0 <= v < 1.0。
介绍此函数的
MySQL
文档也介绍道,可以通过此计算公式FLOOR(i + RAND() * (j – i)),获取i <= v < j的
随机数
字v。
附文档链接:http://dev.
mysql
...
MySQL
取
随机数
:
若要在i ≤ R ≤ j 这个
范围
得到一个
随机
整数R ,需要用到表达式 FLOOR(i + RAND() * (j – i + 1))。
例如, 若要在7 到 12 的
范围
(包括7和12)内得到一个
随机
整数, 可使用以下语句:
SELECT FLOOR(7 + (RAND() * 6));
也可以通过创建function取
随机
值
,如下:
CREATE FUNCTION rand_num (
start_num INTEGER,
end_num INTEGER
有这样一个场景,需要从200个商品中
随机
获取5个进行展示,
mysql
有一个RAND()函数可以满足需要,简单记录
MySQL
函数在内部被标记为确定性或不确定性。一个函数是不确定的,如果给定其参数的固定
值
,它可以为不同的调用返回不同的结果。非确定性函数的例子:RAND(), UUID()。这里主要描述RAND()的使用方法。
RAND()
返回一个
随机
浮点
值
v,
范围
为0 <= v < 1.0。为了得到一个在i <= R < j
范围
内的
随机
整数R,使用表达式FLOOR(i + RAN
若要在i≤R≤j这个
范围
得到一个
随机
整数R,需要用到表达式 FLOOR(i+ RAND() * (j–i+ 1))。例如, 若要在7 到 12 的
范围
(包括7和12)内得到一个
随机
整数, 可使用以下语句:
SELECT FLOOR(7 + (RAND() * 6));
转载于:https://www.cnblogs.com/ahuing/p/3630347.html...
qq_20098187: