sql >> Base de Datos >  >> RDS >> Mysql

Cómo limitar los resultados en MySQL, PostgreSQL y SQLite

Problema:

Desea limitar el número de filas resultantes de una consulta en MySQL, PostgreSQL o SQLite.

Ejemplo:

En el exam tabla, hay nombres de los estudiantes con los resultados del examen.

nombre resultado_examen
Janet Morgen 9
Taya Bain 11
Anne Johnson 11
Josh Kaur 10
Ellen Thornton 8

Quiere obtener las tres filas con los mejores resultados en el examen.

Solución:

SELECT *
FROM exam
ORDER BY exam_result DESC
LIMIT 3;

El resultado de la consulta se ve así:

nombre resultado_examen
Taya Bain 11
Anne Johnson 11
Josh Kaur 10

Discusión:

Primero, ordene las filas por el exam_result columna en orden descendente usando ORDER BY cláusula y el DESC palabra clave. Luego, después de ORDER BY cláusula, use el LIMIT palabra clave con un número de filas que le gustaría devolver (aquí, 3 ).

ORDER BY exam_result DESC
LIMIT 3

Si desea recuperar tres filas al azar en lugar de las tres mejores, omita ORDER BY parte.

SELECT *
FROM exam
LIMIT 3;

Por supuesto, puede recuperar cualquier número de filas que desee. Simplemente reemplace 3 con el número deseado.