Problema:
Você deseja limitar o número de linhas resultantes de uma consulta em T-SQL.
Exemplo:
No
exam tabela, há nomes dos alunos com os resultados do exame. | nome | exam_result |
|---|---|
| Janet Morgen | 9 |
| Taya Bain | 11 |
| Anne Johnson | 11 |
| Josh Kaur | 10 |
| Ellen Thornton | 8 |
Você deseja obter as três linhas com os melhores resultados do exame.
Solução:
SELECT TOP 3 * FROM exam ORDER BY exam_result DESC;
O resultado da consulta fica assim:
| nome | exam_result |
|---|---|
| Taya Bain | 11 |
| Anne Johnson | 11 |
| Josh Kaur | 10 |
Discussão:
Após o
SELECT palavra-chave, use a TOP palavra-chave junto com o número de linhas que você gostaria de recuperar (aqui, 3 ). Lembre-se de classificar as linhas pelo exam_result coluna em ordem decrescente usando o ORDER BY cláusula e o DESC palavra-chave. SELECT TOP 3 * FROM exam ORDER BY exam_result DESC;
Se você quiser recuperar três linhas aleatoriamente em vez das três melhores, pule o
ORDER BY papel. SELECT TOP 3 * FROM exam;
Claro, você pode recuperar qualquer número de linhas que desejar. Basta substituir
3 com o número desejado.