Problema:
Desea limitar el número de filas resultantes de una consulta en T-SQL.
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 TOP 3 * FROM exam ORDER BY exam_result DESC;
El resultado de la consulta se ve así:
nombre | resultado_examen |
---|---|
Taya Bain | 11 |
Anne Johnson | 11 |
Josh Kaur | 10 |
Discusión:
Después de SELECT
palabra clave, use el TOP
palabra clave junto con el número de filas que desea recuperar (aquí, 3
). Recuerde ordenar las filas por el exam_result
columna en orden descendente usando ORDER BY
cláusula y el DESC
palabra clave.
SELECT TOP 3 * FROM exam ORDER BY exam_result DESC;
Si desea recuperar tres filas al azar en lugar de las tres mejores, omita ORDER BY
parte.
SELECT TOP 3 * FROM exam;
Por supuesto, puede recuperar cualquier número de filas que desee. Simplemente reemplace 3
con su número deseado.