Outdated Version
You are viewing an older version of this section. View current production version.
RAND
Syntax
RAND ( [seed] )
Arguments
- seed: any valid numerical value.
Return type
A random float or double between 0 and 1.0.
Examples
In this example, note how the values in the rand() column differ across calls, and rand(1234) remains the same.
memsql> create table randos (i bigint primary key);
memsql> insert into randos values (1), (2), (3), (4);
memsql> select i, rand(), rand(1234) from randos;
+---+---------------------+----------------------+
| i | rand() | rand(1234) |
+---+---------------------+----------------------+
| 1 | 0.060627053578449 | 0.9903344706785644 |
| 2 | 0.6705938059950731 | 0.9595036873433918 |
| 3 | 0.0033184406209954 | 0.30311394845511597 |
| 4 | 0.16278354692338404 | 0.021165254013737034 |
+---+---------------------+----------------------+
memsql> select i, rand(), rand(1234) from randos;
+---+--------------------+----------------------+
| i | rand() | rand(1234) |
+---+--------------------+----------------------+
| 1 | 0.4223319269518615 | 0.9903344706785644 |
| 2 | 0.0984310326439255 | 0.9595036873433918 |
| 3 | 0.5731110152577712 | 0.30311394845511597 |
| 4 | 0.3304480903355833 | 0.021165254013737034 |
+---+--------------------+----------------------+
memsql> select i, ceil(rand() * 100) from randos;
+---+--------------------+
| i | ceil(rand() * 100) |
+---+--------------------+
| 1 | 1 |
| 2 | 90 |
| 3 | 77 |
| 4 | 80 |
+---+--------------------+
memsql> select i from randos order by rand();
+---+
| i |
+---+
| 4 |
| 1 |
| 2 |
| 3 |
+---+