Select*fromEmployee;+----+--------+---------+|ID|Name | 급여|+---+---------+---------+|1 |가우라브|50000 ||2 |라훌 "/> Select*fromEmployee;+----+--------+---------+|ID|Name | 급여|+---+---------+---------+|1 |가우라브|50000 ||2 |라훌 ">

 >  기사  >  데이터 베이스  >  매번 MySQL 테이블에서 다른 행이나 값 세트를 무작위로 얻을 수 있는 방법은 무엇입니까?

매번 MySQL 테이블에서 다른 행이나 값 세트를 무작위로 얻을 수 있는 방법은 무엇입니까?

PHPz
PHPz앞으로
2023-08-28 23:29:09927검색

我们如何每次从 MySQL 表中随机获取不同的行或值集?

쿼리에서 ORDER BY 및 LIMIT 절과 함께 RAND() 함수를 사용하면 MySQL은 매번 다른 행 또는 값 집합을 반환합니다. 이를 이해하려면 다음 레코드가 있는 "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)

이제 다음 쿼리에서는 RAND() 함수를 사용하고 쿼리에서 ORDER BY 및 LIMIT 절을 모두 사용하여 무작위로 다른 값 또는 Rowset을 반환합니다.

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 테이블에서 다른 행이나 값 세트를 무작위로 얻을 수 있는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제