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.