# Выборка записей при SQL запросе к базе в Python

В тестовом коде SQL запроса есть команда `SELECT`, выполняющая выборку данных из БД. Давайте теперь подробнее разберемся с ее синтаксисом. Вот он:

`query = "SELECT * FROM таблица WHERE условие"`

После имени таблицы можно еще дописать команду `WHERE`, в которой задается условие на выбираемые записи. В нем допустимы следующие операции сравнения: `=`, `!=`, `<>`, `<`, `>`, `<=`, `>=`.

Давайте рассмотрим их применение на примерах.

## Пример

Выберем юзера с `id`, равным `2`:

`query = "SELECT * FROM users WHERE id=2"`

Результат выполненного кода:

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

## Пример

Выберем юзеров с `id`, большим `2`:

`query = "SELECT * FROM users WHERE id>2"`

Результат выполненного кода:

`{'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}`

## Пример

Выберем юзеров с `id`, большим или равным `2`:

`query = "SELECT * FROM users WHERE id>=2"`

Результат выполненного кода:

`{'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}`

## Пример

Выберем юзеров с `id`, не равным `2`:

`query = "SELECT * FROM users WHERE id!=2"`

Результат выполненного кода:

`{'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}`

## Пример

Вместо команды `!=` можно писать команду `<>`:

`query = "SELECT * FROM users WHERE id<>2"`

## Пример

Выберем юзера с именем `'user1'`. Здесь нас поджидает важный нюанс: так как имя является строкой, то его необходимо взять в кавычки:

`query = "SELECT * FROM users WHERE name='user1'"`

Результат выполненного кода:

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

## Пример

Если команда `WHERE` отсутствует, то выберутся все записи из таблицы. Давайте выберем всех работников:

`query = "SELECT * FROM users"`

Результат выполненного кода:

`{'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}`

## Практические задачи

Выберите юзера с `id`, равным `3`.

Выберите юзеров с зарплатой `900`.

Выберите юзеров в возрасте `23` года.

Выберите юзеров с зарплатой более `400`.

Выберите юзеров с зарплатой равной или большей `500`.

Выберите юзеров с зарплатой НЕ равной `500`.

Выберите юзеров с зарплатой равной или меньшей `500`.

← →
↑