更改开始

RANDOM 或 标量函数 RAND

RANDOM函数返回一个0到1之间的随机浮点值。 参数可以指定为可选的种子值。

阅读语法图跳过可视化语法图RANDOM1RAND(数字表达式)
注意:
  • 1 FL 506 RANDOM 是 RAND 函数新支持的名称。
更改开始更改结束

该模式是 SYSIBM。

numeric-expression
如果指定了数字表达式 ,则将其作为种子值。 表达式必须返回内置整数数据类型(SMALLINT或INTEGER)的值。 数值必须在0到2,147,483,646之间。

参数也可以是字符串或图形字符串数据类型。 字符串输入隐式转换为DECFLOAT(34)的数值,然后赋值给INTEGER。

函数的结果是双精度浮点数。

结果可以为空值;如果参数为空值,那么结果为空值。

每次执行查询时,特定种子值(非零)都会为随机函数的特定实例生成相同的随机数序列。 种子值仅用于在语句中首次调用RANDOM函数的实例。 RANDOM(0) 的处理方式与 相同。 RANDOM()

注意

决定论:
RANDOM是一个非确定性函数。

示例

示例 1
假设主变量 HRAND 是一个值为100的整数。 以下语句返回一个随机浮点数,取值范围为0-1,例如近似值.0121398:
   SELECT RANDOM(:HRAND)
     FROM SYSIBM.SYSDUMMY1;
示例
若要在 0 到 1 以外的数值区间生成数值,请将 RAND 函数乘以所需的区间大小。 例如,要得到一个介于0到10之间的随机数,比如近似值 5.8731398 ,将函数乘以10:
   SELECT (RANDOM(:HRAND) * 10)
     FROM SYSIBM.SYSDUMMY1;
更改结束