MySQL random number

You may fall in the condition when you want to create random number for your program to process some logic, here is the solution for such condition.

MySQL random number

MySQL random number

     

You may fall in the condition when you want to create random number for your program to process some logic, here is the solution for such condition. You can create a random number by the use of RAND() function of MySQL. There are two versions of RAND() function : first RAND() and second is RAND(X). Random numbers are created to produce unpredictable floating-point value between 0 and 1 (including both 0 and 1). Random number generated by the use of RAND() function is not a perfect random number but it is very close to the perfect random numbers.

Here in this example we will describe, how you can create random number in MySQL. Numbers generated are in the random order which means that they lack any pattern.

 

 

 

mysql> set @Number = RAND();
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @Number as Number;
+------------------+
| Number           |
+------------------+
| 0.44307944592375 |
+------------------+
1 row in set (0.00 sec)
mysql> set @Number = RAND();
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT @Number as Number;
+------------------+
| Number           |
+------------------+
| 0.63046264893418 |
+------------------+
1 row in set (0.00 sec)

We have created a variable Number in which generated random number is being taken and thereafter we can show the result of it.

Now we are going to explain you use of RAND(X) with the simple example.

mysql> set @Number = RAND(1);
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @Number as Number;
+------------------+
| Number           |
+------------------+
| 0.40540353712198 |
+------------------+
1 row in set (0.00 sec)
mysql> set @Number = RAND(1);
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @Number as Number;
+------------------+
| Number           |
+------------------+
| 0.40540353712198 |
+------------------+
1 row in set (0.00 sec)

You can see that it generates the same number since we have provided seed value in the RAND() function.