Renditja e të dhënave përmes kërkesës SQL në Python

Për të renditur rreshtat e rezultatit, duhet të përdorni komandën ORDER BY.

Shembull

Le të zgjedhim nga tabela jonë users të gjithë përdoruesit dhe t'i renditim sipas moshës nga më e vogla te më e madhja:

pythonquery = "SELECT * FROM users ORDER BY age"

Rezultati i kodit të ekzekutuar:

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

Shembull

Le të ndryshojmë rendin e renditjes duke përdorur komandën DESC:

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

Rezultati i kodit të ekzekutuar:

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

Shembull

Le të zgjedhim të gjithë përdoruesit me pagë 500 dhe t'i renditim sipas moshës nga më e vogla te më e madhja:

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

Rezultati i kodit të ekzekutuar:

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

Shembull

Mund të renditni jo sipas një fushe, por sipas disa. Le të zgjedhim për shembull të gjithë përdoruesit dhe t'i renditim së pari sipas moshes në rritje, dhe përdoruesit me moshë të njëjtë t'i renditim sipas rritjes së pagës:

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

Rezultati i kodit të ekzekutuar:

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

Shembull

Komanda ORDER BY mund të kombinohet me LIMIT . Në këtë rast së pari duhet të shkruhet komanda e renditjes, e më pas - limiti. Në shembullin vijues së pari le t'i renditim të dhënat sipas moshës në rritje, e më pas të marrim 3 të parat:

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

Rezultati i kodit të ekzekutuar:

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

Detyra praktike

Задание 1

Merrni të gjithë përdoruesit dhe renditini ata sipas rritjes së pagës.

Задание 2

Merrni të gjithë përdoruesit dhe renditini ata sipas zbritjes së pagës.

Задание 3

Merrni të gjithë përdoruesit dhe renditini ata sipas emrit.

Задание 4

Merrni përdoruesit me pagë 500 dhe renditini sipas moshës.

Задание 5

Merrni të gjithë përdoruesit dhe renditini ata sipas emrit dhe pagës.

Задание 6

Renditni përdoruesit sipas rritjes së pagës dhe merrni 3 punonjësit e parë nga rezultati i renditjes.

Задание 7

Renditni përdoruesit sipas zbritjes së pagës dhe merrni 3 përdoruesit e parë nga rezultati i renditjes.