Mysql
 sql >> Database >  >> RDS >> Mysql

Come limitare i risultati in MySQL, PostgreSQL e SQLite

Problema:

Vuoi limitare il numero di righe risultanti da una query in MySQL, PostgreSQL o SQLite.

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 *
FROM exam
ORDER BY exam_result DESC
LIMIT 3;

Il risultato della query è simile al seguente:

nome risultato_esame
Taya Bain 11
Anna Johnson 11
Josh Kaur 10

Discussione:

Per prima cosa, ordina le righe in base al exam_result colonna in ordine decrescente utilizzando il ORDER BY clausola e il DESC parola chiave. Quindi, dopo il ORDER BY clausola, utilizzare il LIMIT parola chiave con un numero di righe che desideri restituire (qui, 3 ).

ORDER BY exam_result DESC
LIMIT 3

Se desideri recuperare tre righe in modo casuale anziché le tre migliori, salta il ORDER BY parte.

SELECT *
FROM exam
LIMIT 3;

Naturalmente, puoi recuperare il numero di righe che desideri. Sostituisci semplicemente 3 con il numero desiderato.