⊗pyPmDBNSr 115 of 129 menu

Ierakstu kārtošana ar SQL vaicājumu Python

Lai kārtotu rezultāta rindas, jāizmanto komanda ORDER BY.

Piemērs

Izvēlēsimies no mūsu tabulas users visus lietotājus un sakārtosim tos pēc vecuma no mazākā uz lielāko:

query = "SELECT * FROM users ORDER BY age"

Izpildītā koda rezultāts:

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

Piemērs

Mainīsim kārtošanas secību, izmantojot komandu DESC:

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

Izpildītā koda rezultāts:

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

Piemērs

Izvēlēsimies visus lietotājus ar algu 500 un sakārtosim tos pēc vecuma no mazākā uz lielāko:

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

Izpildītā koda rezultāts:

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

Piemērs

Var kārtot nevis pēc viena lauka, bet pēc vairākiem. Paraugam izvēlēsimies visus lietotājus un sakārtosim tos vispirms pēc augoša vecuma, bet lietotājus ar vienādiem vecumiem sakārtosim pēc augošas algas:

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

Izpildītā koda rezultāts:

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

Piemērs

Komandu ORDER BY var kombinēt ar LIMIT. Šajā gadījumā vispirms ir jāraksta kārtošanas komanda, bet pēc tam - limits. Nākamajā piemērā vispirms sakārtosim ierakstus pēc augoša vecuma, tad paņemsim pirmos 3 ierakstus:

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

Izpildītā koda rezultāts:

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

Praktiskie uzdevumi

Iegūstiet visus lietotājus un sakārtojiet tos pēc augošas algas.

Iegūstiet visus lietotājus un sakārtojiet tos pēc dilstošas algas.

Iegūstiet visus lietotājus un sakārtojiet tos pēc vārda.

Iegūstiet lietotājus ar algu 500 un sakārtojiet tos pēc vecuma.

Iegūstiet visus lietotājus un sakārtojiet tos pēc vārda un pēc algas.

Sakārtojiet lietotājus pēc augošas algas un iegūstiet pirmos 3 darbiniekus no kārtošanas rezultāta.

Sakārtojiet lietotājus pēc dilstošas algas un iegūstiet pirmos 3 lietotājus no kārtošanas rezultāta.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt