Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment limiter les résultats dans MySQL, PostgreSQL et SQLite

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é.