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.