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.