Výber záznamov pri SQL dotaze k databáze v Pythone

V testovacom kóde SQL dotazu je príkaz SELECT, ktorý vykonáva výber údajov z databázy. Poďme sa teraz podrobnejšie zoznámiť s jeho syntaxou. Tu je:

pythonquery = "SELECT * FROM tabulka WHERE podmienka"

Po názve tabuľky je možné ešte dopísať príkaz WHERE, v ktorom sa zadáva podmienka pre vyberané záznamy. V nej sú povolené nasledujúce porovnávacie operácie: =, !=, <>, <, >, <=, >=.

Poďme si ich použitie ukázať na príkladoch.

Príklad

Vyberme používateľa s id rovným 2:

pythonquery = "SELECT * FROM users WHERE id=2"

Výsledok vykonaného kódu:

python{'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}

Príklad

Vyberme používateľov s id väčším ako 2:

pythonquery = "SELECT * FROM users WHERE id>2"

Výsledok vykonaného kódu:

python{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}

Príklad

Vyberme používateľov s id väčším alebo rovným 2:

pythonquery = "SELECT * FROM users WHERE id>=2"

Výsledok vykonaného kódu:

python{'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}

Príklad

Vyberme používateľov s id nerovnajúcim sa 2:

pythonquery = "SELECT * FROM users WHERE id!=2"

Výsledok vykonaného kódu:

python{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}

Príklad

Namiesto príkazu != je možné písať príkaz <>:

pythonquery = "SELECT * FROM users WHERE id<>2"

Príklad

Vyberme používateľa s menom 'user1'. Tu nás čaká dôležitá nuansa: keďže meno je reťazec, je potrebné ho napísať do úvodzoviek:

pythonquery = "SELECT * FROM users WHERE name='user1'"

Výsledok vykonaného kódu:

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

Príklad

Ak príkaz WHERE chýba, vyberú sa všetky záznamy z tabuľky. Vyberme všetkých zamestnancov:

pythonquery = "SELECT * FROM users"

Výsledok vykonaného kódu:

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': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}

Praktické úlohy

Задание 1

Vyberte používateľa s id rovným 3.

Задание 2

Vyberte používateľov so mzdou 900.

Задание 3

Vyberte používateľov vo veku 23 rokov.

Задание 4

Vyberte používateľov so mzdou vyššou ako 400.

Задание 5

Vyberte používateľov so mzdou rovnou alebo vyššou ako 500.

Задание 6

Vyberte používateľov so mzdou NE rovnajúcou sa 500.

Задание 7

Vyberte používateľov so mzdou rovnou alebo nižšou ako 500.