⊗pyPmDBNSr 115 of 129 menu

Kirjete sorteerimine SQL-päringu abil Pythonis

Rea tulemuse sorteerimiseks peate kasutama käsku ORDER BY.

Näide

Valime oma tabelist users kõik kasutajad ja sorteerime need vanuse järgi väiksemast suuremani:

query = "SELECT * FROM users ORDER BY age"

Käivitatud koodi tulemus:

{'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}

Näide

Muudame sorteerimise järjekorda kasutades käsku DESC:

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

Käivitatud koodi tulemus:

{'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}

Näide

Valime kõik kasutajad, kelle palk on 500 ja sorteerime need vanuse järgi väiksemast suuremani:

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

Käivitatud koodi tulemus:

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

Näide

Võite sorteerida mitte ühe, vaid mitme välja järgi. Näitena valime kõik kasutajad ja sorteerime need esmalt vanuse kasvamise järjekorras, ning kasutajad samade vanustega sorteerime palga kasvamise järjekorras:

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

Käivitatud koodi tulemus:

{'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}

Näide

Käsku ORDER BY saab kombineerida käsuga LIMIT. Sel juhul tuleb esmalt kirjutada sorteerimiskäsk ja seejärel - limiit. Järgmises näites sorteerime esmalt kirjed vanuse kasvamise järjekorras ja seejärel võtame esimesed 3 tükki:

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

Käivitatud koodi tulemus:

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

Praktilised ülesanded

Hankige kõik kasutajad ja sorteerige need palga kasvamise järjekorras.

Hankige kõik kasutajad ja sorteerige need palga kahaneva järjekorras.

Hankige kõik kasutajad ja sorteerige need nime järgi.

Hankige kasutajad, kelle palk on 500 ja sorteerige need vanuse järgi.

Hankige kõik kasutajad ja sorteerige need nime ja palga järgi.

Sorteerige kasutajad palga kasvamise järjekorras ja hankige sorteerimistulemusest esimesed 3 töötajat.

Sorteerige kasutajad palga kahaneva järjekorras ja hankige sorteerimistulemusest esimesed 3 kasutajat.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu