Problème :
Vous souhaitez limiter le nombre de lignes résultant d'une requête dans MySQL, PostgreSQL ou SQLite.
Exemple :
À l'exam
tableau, il y a les noms des étudiants avec les résultats de l'examen.
nom | résultat_examen |
---|---|
Janet Morgen | 9 |
Taya Bain | 11 |
Anne Johnson | 11 |
Josh Kaur | 10 |
Ellen Thornton | 8 |
Vous voulez obtenir les trois lignes avec les meilleurs résultats d'examen.
Solution :
SELECT * FROM exam ORDER BY exam_result DESC LIMIT 3;
Le résultat de la requête ressemble à ceci :
nom | résultat_examen |
---|---|
Taya Bain | 11 |
Anne Johnson | 11 |
Josh Kaur | 10 |
Discussion :
Tout d'abord, triez les lignes par exam_result
colonne dans l'ordre décroissant en utilisant le ORDER BY
clause et le DESC
mot-clé. Puis, après le ORDER BY
clause, utilisez la LIMIT
mot-clé avec un nombre de lignes que vous souhaitez renvoyer (ici, 3
).
ORDER BY exam_result DESC LIMIT 3
Si vous souhaitez récupérer trois lignes au hasard au lieu des trois meilleures, ignorez le ORDER BY
partie.
SELECT * FROM exam LIMIT 3;
Bien entendu, vous pouvez récupérer le nombre de lignes que vous souhaitez. Remplacez simplement 3 avec le numéro souhaité.