SQL для начинающих: Выборка данных с WHERE, ORDER BY, LIMIT

Этот урок посвящен выбору данных из таблиц базы данных с использованием SQL. Рассмотрим операторы WHERE, ORDER BY и LIMIT, позволяющие выполнять сложные запросы и получать нужные результаты.

Выборка всех записей

Для выбора всех записей из таблицы используется следующий синтаксис:

SELECT * FROM people;

SELECT * выбирает все столбцы (*), а FROM people указывает таблицу, из которой следует выбирать данные.

Выборка конкретных полей

Для выбора только определенных полей используется список имен полей после SELECT:

SELECT name, bio FROM people;

Этот запрос выбирает только столбцы name и bio из таблицы people.

Фильтрация данных с помощью WHERE

Оператор WHERE позволяет фильтровать данные, выбирая только записи, удовлетворяющие заданному условию. Например:

SELECT id, name FROM people WHERE id > 2 AND id < 4;

Этот запрос выбирает id и name из таблицы people, где id больше 2 и меньше 4. Можно использовать операторы сравнения: > (больше), < (меньше), >= (больше или равно), <= (меньше или равно), = (равно), != (не равно).

Для проверки на NULL используется оператор IS:

SELECT * FROM people WHERE bio IS NULL;

Этот запрос выбирает все записи, где поле bio имеет значение NULL. Для проверки на не-NULL используется IS NOT NULL.

Комбинирование условий: AND и OR

Операторы AND и OR позволяют комбинировать несколько условий:

SELECT * FROM people WHERE name = 'Иван' OR id = 4;

Этот запрос выбирает записи, где name равно ‘Иван’ или id равно 4. AND требует выполнения всех условий, OR – хотя бы одного.

Удаление дубликатов: DISTINCT

Оператор DISTINCT удаляет дубликаты из результатов запроса:

SELECT DISTINCT name FROM people;

Этот запрос выведет список уникальных значений из столбца name.

Ограничение количества результатов: LIMIT

Оператор LIMIT ограничивает количество возвращаемых записей:

SELECT * FROM people LIMIT 2;

Этот запрос вернет только первые две записи из таблицы people. LIMIT можно использовать с параметром смещения:

SELECT * FROM people LIMIT 2, 3;

Этот запрос пропустит первые два элемента и вернет следующие три.

Сортировка результатов: ORDER BY

Оператор ORDER BY сортирует результаты запроса:

SELECT * FROM people ORDER BY id DESC;

Этот запрос сортирует записи по столбцу id в убывающем порядке (DESC). Для сортировки по возрастанию используется ASC (по умолчанию). ORDER BY должен идти перед LIMIT.

Дополнительные операторы: BETWEEN, IN, LIKE

Оператор BETWEEN проверяет, находится ли значение в заданном диапазоне; IN проверяет, содержит ли список значений заданное значение; LIKE используется для поиска по шаблонам. Примеры использования этих операторов приведены ниже:

SELECT * FROM people WHERE id BETWEEN 2 AND 6 AND id != 4 ORDER BY id DESC LIMIT 10; -- BETWEEN
SELECT * FROM people WHERE id IN (4, 5, 2, 1); -- IN
SELECT * FROM people WHERE name LIKE 'И%'; -- LIKE

LIKE использует символ % как подстановочный знак, соответствующий любому количеству символов.

В этом уроке мы рассмотрели основные операторы SQL для выборки данных: WHERE, ORDER BY, LIMIT, DISTINCT, BETWEEN, IN и LIKE. Комбинируя эти операторы, можно создавать сложные и эффективные запросы для получения необходимой информации из базы данных.

Что будем искать? Например,программа