Select*fromEmployee;+----+--------+--------+|ID|Nama | Gaji|+----+--------+--------+|1 |Gaurav|50000 ||2 |Rahul "/> Select*fromEmployee;+----+--------+--------+|ID|Nama | Gaji|+----+--------+--------+|1 |Gaurav|50000 ||2 |Rahul ">

Rumah  >  Artikel  >  pangkalan data  >  Bagaimanakah kita boleh secara rawak mendapatkan set baris atau nilai yang berbeza daripada jadual MySQL setiap kali?

Bagaimanakah kita boleh secara rawak mendapatkan set baris atau nilai yang berbeza daripada jadual MySQL setiap kali?

PHPz
PHPzke hadapan
2023-08-28 23:29:09927semak imbas

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

Apabila kita menggunakan fungsi RAND() dengan klausa ORDER BY dan LIMIT dalam pertanyaan, MySQL mengembalikan set baris atau nilai yang berbeza setiap masa. Untuk memahaminya, pertimbangkan jadual "Pekerja" yang mempunyai rekod berikut -

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)

Sekarang, pertanyaan berikut akan menggunakan fungsi RAND() dan menggunakan klausa ORDER BY dan LIMIT dalam pertanyaan, Kembalikan secara rawak set nilai atau baris yang berbeza -

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)

Seperti yang anda boleh lihat daripada set hasil di atas, setiap kali anda menjalankan pertanyaan, ia mengembalikan set nilai atau baris yang berbeza secara rawak.

Atas ialah kandungan terperinci Bagaimanakah kita boleh secara rawak mendapatkan set baris atau nilai yang berbeza daripada jadual MySQL setiap kali?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam