Problema:
Vuoi limitare il numero di righe risultanti da una query in T-SQL.
Esempio:
Nell'exam
tabella, ci sono i nomi degli studenti con i risultati dell'esame.
nome | risultato_esame |
---|---|
Janet Morgen | 9 |
Taya Bain | 11 |
Anna Johnson | 11 |
Josh Kaur | 10 |
Ellen Thornton | 8 |
Vuoi ottenere le tre righe con i migliori risultati dell'esame.
Soluzione:
SELECT TOP 3 * FROM exam ORDER BY exam_result DESC;
Il risultato della query è simile al seguente:
nome | risultato_esame |
---|---|
Taya Bain | 11 |
Anna Johnson | 11 |
Josh Kaur | 10 |
Discussione:
Dopo il SELECT
parola chiave, utilizzare il TOP
parola chiave insieme al numero di righe che desideri recuperare (qui, 3
). Ricorda di ordinare le righe in base al exam_result
colonna in ordine decrescente utilizzando il ORDER BY
clausola e il DESC
parola chiave.
SELECT TOP 3 * FROM exam ORDER BY exam_result DESC;
Se desideri recuperare tre righe in modo casuale invece delle tre migliori, salta il ORDER BY
parte.
SELECT TOP 3 * FROM exam;
Naturalmente, puoi recuperare il numero di righe che desideri. Sostituisci semplicemente 3
con il numero desiderato.