MySQL | RAND method
Start your free 7-days trial now!
MySQL's RAND(~)
method returns a random float value between 0
(inclusive) and 1
(exclusive).
Parameters
1. N
| int
| optional
The seed value to use. By default None
.
If a particular seed value is specified, the same random number will be generated every time that particular seed value is used. Hence if you run SELECT RAND(3);
you will always get 0.9057697559760601
Return value
A random float value between 0
(inclusive) and 1
(exclusive).
Examples
Basic usage
To return a random float value between 0
and 1
(exclusive):
SELECT RAND();
+--------------------+| RAND() |+--------------------+| 0.9960292372815583 |+--------------------+
To return a random float value between 0
and 10
(exclusive):
SELECT RAND() * 10;
+-------------------+| RAND() * 10 |+-------------------+| 9.803185351009652 |+-------------------+
Use with FLOOR(~)
To return a random integer between 6
and 12
(exclusive):
SELECT FLOOR(6 + (RAND() * 6));
+-------------------------+| FLOOR(6 + (RAND() * 6)) |+-------------------------+| 11 |+-------------------------+
Note that by using the FLOOR method we are able to return an integer rather than a floating point value.
Seed parameter
To specify a seed value of 5
:
SELECT RAND(5), RAND(5);
+---------------------+---------------------+| RAND(5) | RAND(5) |+---------------------+---------------------+| 0.40613597483014313 | 0.40613597483014313 |+---------------------+---------------------+
We can see that the same return value is obtained for both columns due to the use of seed value 5
.