在MySQL中,如何将结果集中的一组行或值随机排列?
通过使用RAND()函数和ORDER BY子句,可以将结果集中的一组行或值进行随机排列。为了理解它,请考虑一个名为“Employee”的表,其中包含以下记录 –
mysql> Select * from employee;
+----+--------+--------+
| ID | Name | Salary |
+----+--------+--------+
| 1 | Gaurav | 50000 |
| 2 | Rahul | 20000 |
| 3 | Advik | 25000 |
| 4 | Aarav | 65000 |
| 5 | Ram | 20000 |
| 6 | Mohan | 30000 |
| 7 | Aryan | NULL |
| 8 | Vinay | NULL |
+----+--------+--------+
8 rows in set (0.00 sec)
现在,下面的查询将使用ORDER BT RAND()将结果集中的一组行进行随机排序 –
mysql> Select * from Employee ORDER BY RAND();
+----+--------+--------+
| ID | Name | Salary |
+----+--------+--------+
| 4 | Aarav | 65000 |
| 1 | Gaurav | 50000 |
| 3 | Advik | 25000 |
| 7 | Aryan | NULL |
| 6 | Mohan | 30000 |
| 8 | Vinay | NULL |
| 5 | Ram | 20000 |
| 2 | Rahul | 20000 |
+----+--------+--------+
8 rows in set (0.00 sec)
阅读更多:MySQL 教程