⊗pyPmDBNSr 115 of 129 menu

Сортирање записа преко SQL упита у Python-у

Да бисте сортирали редове резултата, потребно је да користите команду ORDER BY.

Пример

Изаберимо из наше табеле users све кориснике и сортирајмо их по старости од мањег ка већем:

query = "SELECT * FROM users ORDER BY age"

Резултат извршеног кода:

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

Пример

Променимо редослед сортирања помоћу команде DESC:

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

Резултат извршеног кода:

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

Пример

Изаберимо све кориснике са платом 500 и сортирајмо их по старости од мањег ка већем:

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

Резултат извршеног кода:

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

Пример

Може се сортирати не по једном пољу, већ по неколико. Хајде за пример да изаберемо све кориснике и сортирамо их прво по растућој старости, а кориснике са истим старостма сортирамо по растућој плати:

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

Резултат извршеног кода:

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

Пример

Команду ORDER BY може се комбиновати са LIMIT . При томе прво треба писати команду сортирања, а затим - лимит. У следећем примеру прво ћемо сортирати записе по растућој старости, а потом узети првих 3 комада:

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

Резултат извршеног кода:

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

Практични задаци

Довуците све кориснике и сортирајте их по растућој плати.

Довуците све кориснике и сортирајте их по опадајућој плати.

Довуците све кориснике и сортирајте их по имену.

Довуците кориснике са платом 500 и сортирајте их по старости.

Довуците све кориснике и сортирајте их по имену и по плати.

Сортирајте кориснике по растућој плати и добијте прва 3 запослена из резултата сортирања.

Сортирајте кориснике по опадајућој плати и добијте прва 3 корисника из резултата сортирања.

Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј