当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


SQL Server RAND()用法及代码示例


RAND()函数:
SQL Server中的此函数用于返回一个随机的十进制值,并且该值位于大于等于零(> = 0)且小于1的范围内。如果要获得i <范围内的随机整数R = 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))生成随机数。在这里我是3而j是9。

SELECT FLOOR(3 + RAND()*(9 - 3 + 1));

输出:

9.0

应用:
此函数用于返回0(含)和1(不含)之间的随机数。

相关用法


注:本文由纯净天空筛选整理自Kanchan_Ray大神的英文原创作品 RAND() Function in SQL Server。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。