- Categories:
UNIFORM¶
Generates a uniformly-distributed pseudo-random number in the inclusive
range [min
, max
].
Syntax¶
UNIFORM( <min> , <max> , <gen> )
Arguments¶
min
A constant specifying the minimum value (inclusive) of the generated number.
max
A constant specifying the maximum value (inclusive) of the generated number.
gen
An expression that serves as a raw source of uniform random numbers, typically the
RANDOM
function. For more information, see the Data Generation Functions Usage notes.
Returns¶
If either or both of min
or max
is a floating-point number,
UNIFORM
returns a floating-point number. If both min
and
max
are integers, UNIFORM
returns an integer.
Usage notes¶
This function is related to, but different from, the RANDOM function. Both functions generate uniform distributions, but there are differences in the ranges of the values returned.
RANDOM
generates pseudo-random 64-bit integers. It accepts an optional seed that allows sequences to be repeated.UNIFORM
generates random integer or floating-point numbers in the specified range.
Examples¶
SELECT uniform(1, 10, random()) FROM table(generator(rowCount => 5));
--------------------------+
uniform(1, 10, random()) |
--------------------------+
6 |
4 |
7 |
9 |
4 |
--------------------------+
SELECT uniform(0::float, 1::float, random()) FROM table(generator(rowCount => 5));
---------------------------------------+
uniform(0::float, 1::float, random()) |
---------------------------------------+
0.2895427479 |
0.7178660941 |
0.6925603163 |
0.05914526824 |
0.8243151404 |
---------------------------------------+
SELECT uniform(1, 10, 1234) FROM table(generator(rowCount => 5));
----------------------+
uniform(1, 10, 1234) |
----------------------+
7 |
7 |
7 |
7 |
7 |
----------------------+