Select*fromemployee;+----+--------+--------+|ID|Name | Salaire|+----+--------+--------+|1 |Gaurav|50000 ||2 |Rahul"/> Select*fromemployee;+----+--------+--------+|ID|Name | Salaire|+----+--------+--------+|1 |Gaurav|50000 ||2 |Rahul">

Maison  >  Article  >  base de données  >  Comment mélanger un ensemble de lignes MySQL à l'aide de la fonction RAND() dans une clause ORDER BY ?

Comment mélanger un ensemble de lignes MySQL à l'aide de la fonction RAND() dans une clause ORDER BY ?

WBOY
WBOYavant
2023-08-23 20:09:061621parcourir

如何在 ORDER BY 子句中使用 RAND() 函数来打乱 MySQL 行集?

Lorsque nous utilisons la clause MySQL ORDER BY avec la fonction RAND(), l'ensemble de résultats aura un ensemble de lignes mélangées. En d’autres termes, l’ensemble des résultats sera dans un ordre aléatoire. Pour le comprendre, considérons une table "Employé" avec les enregistrements suivants -

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)

Maintenant, la requête suivante utilisera ORDER BT RAND() pour mélanger l'ensemble des lignes dans l'ensemble de résultats -

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)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer