Python-da SQL soragy arkaly ýazgylary tertiplemek

Netije hatarlaryny tertiplemek üçin, ORDER BY buýrugyny ulanyň.

Mysal

Bizim users tablisamyzdan ähli ulanyjylary saýlap alyň we olary ýaşy boýunça kiçiden ulya çenli tertipläň:

pythonquery = "SELECT * FROM users ORDER BY age"

Ýerine ýetirilen kodyň netijesi:

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}

Mysal

DESC buýrugy arkaly tertipleme tertibini üýtgedeliň:

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

Ýerine ýetirilen kodyň netijesi:

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}

Mysal

Maşy 500 bolan ähli ulanyjylary saýlap alyň we olary ýaşy boýunça kiçiden ulya çenli tertipläň:

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

Ýerine ýetirilen kodyň netijesi:

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}

Mysal

Bir meýdan boýunça däl-de, birnäçe meýdan boýunça tertipläp bolýar. Mysal üçin, ähli ulanyjylary saýlap alyň we olary ilki bilen ýaşa görä artýan tartypda, soňra bolsa birmeňzeş ýaşly ulanyjylary maşa görä artýan tartypda tertipläň:

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

Ýerine ýetirilen kodyň netijesi:

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}

Mysal

ORDER BY buýrugy LIMIT bilen birikdirilip bilner. Bu ýagdaýda ilki bilen tertipleme buýrugy, soňra bolsa limit ýazylmaly. Aşakdaky mysalda ilki bilen ýazgylary ýaşa görä artýan tartypda tertipläp, soňra ilkinji 3 sanysyny alyň:

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

Ýerine ýetirilen kodyň netijesi:

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}

Amaly meseleler

Задание 1

Ähli ulanyjylary alyň we olary maşa görä artýan tartypda tertipläň.

Задание 2

Ähli ulanyjylary alyň we olary maşa görä azalýan tartypda tertipläň.

Задание 3

Ähli ulanyjylary alyň we olary ada görä tertipläň.

Задание 4

Maşy 500 bolan ulanyjylary alyň we olary ýaşa görä tertipläň.

Задание 5

Ähli ulanyjylary alyň we olary ada we maşa görä tertipläň.

Задание 6

Ulanyjylary maşa görä artýan tartypda tertipläp, tertipleme netijesinden ilkinji 3 işgäri ałyň.

Задание 7

Ulanyjylary maşa görä azalýan tartypda tertipläp, tertipleme netijesinden ilkinji 3 ulanyjyny ałyň.