Рӯйхатсозӣ тавассути дархости 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 корбарро аз
натиҷаи рӯйхат гиред.