Pythonda SQL soraglarynda mantiqy amallar

Saýlap alyş şertinde OR we AND buýruklarynyň kömegi bilen has çylşyrymly kombinasiýalar ýasap bolýar. Olar Pythondaky if gurluşyndaky degişlileri ýaly işleýär. Mysallar bilen göreliň.

Mysal

Maşy 500 we ýaşy 23 ýaş bolan ulanyjylary saýlap alyň:

pythonquery = "SELECT * FROM users WHERE salary=500 AND age=23"

Ýerine ýetirilen kodyň netijesi:

python{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}

Mysal

Maşy 500 ýa-da ýaşy 23 ýaş bolan ulanyjylary saýlap alyň:

pythonquery = "SELECT * FROM users WHERE salary=500 OR age=23"

Ýerine ýetirilen kodyň netijesi:

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

Mysal

Maşy 450 bilen 900 aralygyndaky ulanyjylary saýlap alyň:

pythonquery = "SELECT * FROM users WHERE salary>450 AND salary<900"

Ýerine ýetirilen kodyň netijesi:

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

Mysal

Ýaşy 23 bilen 27 ýaş aralygynda (şol ýaşlar hem girizilmek bilen) bolan ulanyjylary saýlap alyň:

pythonquery = "SELECT * FROM users WHERE age>=23 AND age<=27"

Ýerine ýetirilen kodyň netijesi:

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

Mysal

OR we AND buýruklarynyň çylşyrymly kombinasiýalaryny, şertleriň tertibini görkezmek üçin, ýaýjyk ýaýlary bilen toparlap bolýar:

pythonquery = "SELECT * FROM users WHERE (age<20 AND age>27) OR (salary>300 AND salary<500)"

Ýerine ýetirilen kodyň netijesi:

python{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}

Amaly meseleler

Задание 1

25 ýaşdan (girizilmeýär) bolan we 28 ýaşa çenli (girizilmek bilen) bolan ulanyjylary saýlap alyň.

Задание 2

user1 ulanyjysyny saýlap alyň.

Задание 3

user1 we user2 ulanyjylaryny saýlap alyň.

Задание 4

user3 ulanyjysyndan başga hemmesini saýlap alyň.

Задание 5

27 ýaşdaky ýa-da maşy 1000 bolan ähli ulanyjylary saýlap alyň.

Задание 6

27 ýaşdaky ýa-da maşy 400 bolmadyk ähli ulanyjylary saýlap alyň.

Задание 7

23 ýaşdan (girizilmek bilen) bolan we 27 ýaşa çenli (girizilmeýär) bolan ýa-da maşy 1000 bolan ähli ulanyjylary saýlap alyň.

Задание 8

23 ýaşdan 27 ýaşa çenli bolan ýa-da maşy 400 bilen 1000 aralygynda bolan ähli ulanyjylary saýlap alyň.