Logiske operasjoner i SQL-spørringer i Python

I betingelsene for utvalg kan du lage mer komplekse kombinasjoner ved hjelp av kommandoene OR og AND. De fungerer på samme måte som deres analoger i Python-konstruksjonen if. La oss se på eksempler.

Eksempel

La oss velge brukere med lønn 500 OG alder 23 år:

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

Resultatet av utført kode:

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

Eksempel

La oss velge brukere med lønn 500 ELLER alder 23 år:

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

Resultatet av utført kode:

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}

Eksempel

La oss velge brukere med lønn fra 450 til 900:

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

Resultatet av utført kode:

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}

Eksempel

La oss velge brukere med alder fra 23 til 27 år inkludert:

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

Resultatet av utført kode:

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}

Eksempel

Komplekse kombinasjoner av kommandoene OR og AND kan grupperes ved hjelp av runde parenteser for å vise prioriteten av betingelsene:

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

Resultatet av utført kode:

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

Praktiske oppgaver

Задание 1

Velg brukere i alderen fra 25 (ikke inkludert) til 28 år (inkludert).

Задание 2

Velg bruker user1.

Задание 3

Velg brukere user1 og user2.

Задание 4

Velg alle, unntatt bruker user3.

Задание 5

Velg alle brukere i alderen 27 år eller med lønn 1000.

Задание 6

Velg alle brukere i alderen 27 år eller med lønn ikke lik 400.

Задание 7

Velg alle brukere i alderen fra 23 år (inkludert) til 27 år (ikke inkludert) eller med lønn 1000.

Задание 8

Velg alle brukere i alderen fra 23 år til 27 år eller med lønn fra 400 til 1000.