MariaDB RAND() 函数使用指南
在 MariaDB 中,RAND()
是一个内置函数,它返回一个 0 (包含) 和 1 (不包含) 之间的随机数。
MariaDB RAND()
语法
这里是 MariaDB RAND()
函数的语法:
RAND()
RAND(seed)
参数
seed
- 可选的。产生随机数的种子。如果提供了
seed
,RAND(seed)
函数将产生一个可重复的随机数序列。
如果您提供了错误数量的参数,MariaDB 将报告一个错误:ERROR 1582 (42000): Incorrect parameter count in the call to native function 'RAND'
。
返回值
MariaDB RAND()
函数返回一个 0 (包含) 和 1 (不包含) 之间的随机数。
如果您提供了参数 seed
,MariaDB RAND(seed)
函数将产生一个可重复的随机数序列。
RAND()
返回的是 0 和 1 之间的随机小数,如果你想返回其他区间(比如 m
和 n
)的随机数,请使用以下公式:
m
和n
之间的随机数:RAND() * (n - m) + m
m
和n
之间的随机整数:FLOOR(RAND() * (n - m + 1) + m)
MariaDB RAND()
示例
返回 0 和 1 之间的随机数
SELECT
RAND(),
RAND(),
RAND(),
RAND()\G
输出:
RAND(): 0.24013628460479555
RAND(): 0.9220884246026058
RAND(): 0.8900332999322873
RAND(): 0.6839012565872644
返回 10 和 20 之间的随机数
SELECT
RAND() * (20 - 10) + 10,
RAND() * (20 - 10) + 10,
RAND() * (20 - 10) + 10,
RAND() * (20 - 10) + 10\G
输出:
RAND() * (20 - 10) + 10: 17.494064138731048
RAND() * (20 - 10) + 10: 16.95328330337376
RAND() * (20 - 10) + 10: 12.284224408012093
RAND() * (20 - 10) + 10: 10.56127243727564
返回 10 和 20 之间的随机整数
SELECT
FLOOR(RAND() * (20 - 10 + 1) + 10),
FLOOR(RAND() * (20 - 10 + 1) + 10),
FLOOR(RAND() * (20 - 10 + 1) + 10),
FLOOR(RAND() * (20 - 10 + 1) + 10)\G
输出:
FLOOR(RAND() * (20 - 10 + 1) + 10): 16
FLOOR(RAND() * (20 - 10 + 1) + 10): 18
FLOOR(RAND() * (20 - 10 + 1) + 10): 12
FLOOR(RAND() * (20 - 10 + 1) + 10): 19
种子
带有种子的 MariaDB RAND()
函数返回一个可重复的随机数序列:
SELECT
RAND(5),
RAND(5),
RAND(5)\G
输出:
RAND(5): 0.40613597483014313
RAND(5): 0.40613597483014313
RAND(5): 0.40613597483014313
结论
在 MariaDB 中,RAND()
是一个内置函数,它返回一个 0 (包含) 和 1 (不包含) 之间的随机数。