SQL Server 中的 RAND()函数
兰德()函数:
SQL Server中的这个函数用于返回一个随机的十进制值,该值位于大于等于零(>=0)且小于 1 的范围内。 = R < j,我们必须使用表达式“ FLOOR(i + RAND() * (j − i))”。
特征 :
- 该函数用于给出一个随机的十进制值。
- 返回值介于 0(含)和 1(不含)之间。
- 如果此函数不接受任何参数,它将返回一个完全随机数。
- 如果这个函数接受一个参数,它将返回一个可重复的随机数序列。
- 该函数接受可选参数。
- 此函数使用公式
“FLOOR(i + RAND() * (j − i))”得到一个随机整数R,
其中 R 位于“i <= R < j”的范围内。
句法 :
RAND(N)
范围 :
此方法接受一个参数,如下所示:
- N :如果指定了 N,则返回可重复的随机数序列。如果未指定 N,则返回一个完全随机数。它是可选的,可用作种子值。
回报:
它返回一个介于 0(含)和 1(不含)之间的随机数。
示例-1:
获取 0 到 1 之间的随机值。
SELECT RAND();
输出 :
0.37892290119984562
示例 2 :
获取种子值为 5 的随机十进制数。
SELECT RAND(5);
输出 :
0.71366652509795636
示例 3 :
使用带有变量的 RAND()函数并使用 RAND函数在 [ 2, 8 ) 范围内获取随机数。在这里,我们将使用表达式: FLOOR(i + RAND() * (j − i))来生成随机数。这里,i 是 2,j 是 8。
DECLARE @i INT;
DECLARE @j INT;
SET @i = 2;
SET @j = 8;
SELECT FLOOR(@i + RAND()*(@j-@i));
输出 :
7.0
示例 4:
使用 RAND函数获取范围 [3, 9] 之间的随机值。在这里,我们将使用表达式: FLOOR(i + RAND() * (j − i + 1))来生成随机数。这里 i 是 3,j 是 9。
SELECT FLOOR(3 + RAND()*(9 - 3 + 1));
输出 :
9.0
应用 :
该函数用于返回一个介于 0(含)和 1(不含)之间的随机数。