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)
现在,下面的查询将使用 RAND() 函数,并在查询中同时使用 ORDER BY 和 LIMIT 子句,返回随机不同的值或行集 -
mysql> Select * from employee ORDER BY RAND() LIMIT 4;
+----+-------+--------+
| ID | Name | Salary |
+----+-------+--------+
| 5 | Ram | 20000 |
| 4 | Aarav | 65000 |
| 6 | Mohan | 30000 |
| 8 | Vinay | NULL |
+----+-------+--------+
4 rows in set (0.00 sec)
mysql> Select * from employee ORDER BY RAND() LIMIT 4;
+----+--------+--------+
| ID | Name | Salary |
+----+--------+--------+
| 6 | Mohan | 30000 |
| 8 | Vinay | NULL |
| 2 | Rahul | 20000 |
| 1 | Gaurav | 50000 |
+----+--------+--------+
4 rows in set (0.03 sec)
mysql> Select * from employee ORDER BY RAND() LIMIT 4;
+----+-------+--------+
| ID | Name | Salary |
+----+-------+--------+
| 3 | Advik | 25000 |
| 8 | Vinay | NULL |
| 7 | Aryan | NULL |
| 5 | Ram | 20000 |
+----+-------+--------+
4 rows in set (0.00 sec)
登录后复制
从上面的结果集中可以看出,每次运行查询时,它都会返回一组随机不同的值或行。
以上就是我们如何每次从 MySQL 表中随机获取不同的行或值集?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!