⊗pyPmDBNSr 115 of 129 menu

Ordinamento dei record tramite query SQL in Python

Per ordinare le righe del risultato, è necessario utilizzare il comando ORDER BY.

Esempio

Selezioniamo tutti gli utenti dalla nostra tabella users e ordiniamoli per età dal minore al maggiore:

query = "SELECT * FROM users ORDER BY age"

Risultato del codice eseguito:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

Esempio

Cambiamo l'ordine di ordinamento utilizzando il comando DESC:

query = "SELECT * FROM users ORDER BY age DESC"

Risultato del codice eseguito:

{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}

Esempio

Selezioniamo tutti gli utenti con uno stipendio di 500 e ordiniamoli per età dal minore al maggiore:

query = "SELECT * FROM users WHERE salary=500 ORDER BY age"

Risultato del codice eseguito:

{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}

Esempio

È possibile ordinare non per un campo, ma per più campi. Ad esempio, selezioniamo tutti gli utenti e ordiniamoli prima per età crescente, e gli utenti con la stessa età ordiniamoli per stipendio crescente:

query = "SELECT * FROM users ORDER BY age, salary"

Risultato del codice eseguito:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

Esempio

Il comando ORDER BY può essere combinato con LIMIT. In questo caso, è necessario prima scrivere il comando di ordinamento, e poi - il limite. Nel seguente esempio, prima ordiniamo i record per età crescente, e poi prendiamo i primi 3:

query = "SELECT * FROM users ORDER BY age LIMIT 3"

Risultato del codice eseguito:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}

Compiti pratici

Recuperate tutti gli utenti e ordinateli per stipendio crescente.

Recuperate tutti gli utenti e ordinateli per stipendio decrescente.

Recuperate tutti gli utenti e ordinateli per nome.

Recuperate gli utenti con uno stipendio di 500 e ordinateli per età.

Recuperate tutti gli utenti e ordinateli per nome e per stipendio.

Ordinate gli utenti per stipendio crescente e ottenete i primi 3 dipendenti dal risultato dell'ordinamento.

Ordinate gli utenti per stipendio decrescente e ottenete i primi 3 utenti dal risultato dell'ordinamento.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta