Menu
Amazon Redshift
Database Developer Guide (API Version 2012-12-01)

RANDOM Function

The RANDOM function generates a random value between 0.0 and 1.0.

Syntax

Copy
RANDOM()

Return Type

RANDOM returns a DOUBLE PRECISION number.

Usage Notes

Call RANDOM after setting a seed value with the SET command to cause RANDOM to generate numbers in a predictable sequence.

Examples

Compute a random value between 0 and 99. If the random number is 0 to 1, this query produces a random number from 0 to 100:

Copy
select cast (random() * 100 as int); int4 ------ 24 (1 row)

This example uses the SET command to set a SEED value so that RANDOM generates a predictable sequence of numbers.

First, return three RANDOM integers without setting the SEED value first:

Copy
select cast (random() * 100 as int); int4 ------ 6 (1 row) select cast (random() * 100 as int); int4 ------ 68 (1 row) select cast (random() * 100 as int); int4 ------ 56 (1 row)

Now, set the SEED value to .25, and return three more RANDOM numbers:

Copy
set seed to .25; select cast (random() * 100 as int); int4 ------ 21 (1 row) select cast (random() * 100 as int); int4 ------ 79 (1 row) select cast (random() * 100 as int); int4 ------ 12 (1 row)

Finally, reset the SEED value to .25, and verify that RANDOM returns the same results as the previous three calls:

Copy
set seed to .25; select cast (random() * 100 as int); int4 ------ 21 (1 row) select cast (random() * 100 as int); int4 ------ 79 (1 row) select cast (random() * 100 as int); int4 ------ 12 (1 row)