⊗pyPmDBNSr 115 of 129 menu

SQL so'rovi orqali Python'da yozuvlarni saralash

Natija qatorlarini saralash uchun ORDER BY buyrug'idan foydalanish kerak.

Misol

Keling, users jadvalidan barcha foydalanuvchilarni tanlab, ularni yosh bo'yicha kichikdan kattaga qarab saralaymiz:

query = "SELECT * FROM users ORDER BY age"

Bajarilgan kod natijasi:

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

Misol

DESC buyrug'i yordamida saralash tartibini o'zgartiramiz:

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

Bajarilgan kod natijasi:

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

Misol

Maoshi 500 bo'lgan barcha foydalanuvchilarni tanlab, ularni yosh bo'yicha kichikdan kattaga qarab saralaymiz:

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

Bajarilgan kod natijasi:

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

Misol

Bir maydon bo'yicha emas, balki bir nechta maydonlar bo'yicha saralash mumkin. Keling, misol uchun barcha foydalanuvchilarni tanlab, avval yosh o'sish tartibida, keyin esa bir xil yoshdagi foydalanuvchilarni maosh o'sish tartibida saralaymiz:

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

Bajarilgan kod natijasi:

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

Misol

ORDER BY buyrug'ini LIMIT bilan birlashtirish mumkin. Bunda avval saralash buyrug'i, keyin esa limit yoziladi. Quyidagi misolda avval yozuvlarni yosh o'sish tartibida saralaymiz, keyin esa dastlabki 3 tasini olamiz:

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

Bajarilgan kod natijasi:

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

Amaliy vazifalar

Barcha foydalanuvchilarni oling va ularni maosh o'sish tartibida saralang.

Barcha foydalanuvchilarni oling va ularni maosh kamayish tartibida saralang.

Barcha foydalanuvchilarni oling va ularni ism bo'yicha saralang.

Maoshi 500 bo'lgan foydalanuvchilarni oling va ularni yosh bo'yicha saralang.

Barcha foydalanuvchilarni oling va ularni ism va maosh bo'yicha saralang.

Foydalanuvchilarni maosh o'sish tartibida saralang va saralash natijasidagi dastlabki 3 ishchining ma'lumotlarini oling.

Foydalanuvchilarni maosh kamayish tartibida saralang va saralash natijasidagi dastlabki 3 foydalanuvchi ma'lumotlarini oling.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish