Данная статья описывает основы языка SQL и демонстрирует, как выбирать данные из базы данных. Рассмотрены базовые запросы и операторы для отбора необходимых данных.
Подготовка к работе
Для работы с базами данных необходим сервер. Это может быть локальный сервер (например, Denwer, Open Server) или удалённый сервер, предоставляемый хостинг-провайдером.
Создание таблицы и добавление данных
Для управления базой данных можно использовать phpMyAdmin. Создадим таблицу staff со следующими полями:
- id (AUTO_INCREMENT, числовой тип)
- title (строковый тип, название товара)
- price (числовой тип, цена)
- category (строковый тип, категория, длина 10 символов)
Кодировка таблицы: utf-8 general ci.
После создания таблицы добавим несколько записей:
id | title | price | category |
---|---|---|---|
1 | Помидоры | 5 | Овощи |
2 | Огурцы | 7 | Овощи |
3 | Яблоки | 10 | Фрукты |
4 | Бумага | 12 | Канцтовары |
5 | Мыло | 8 | Товары для дома |
Выборка данных с помощью SQL
Для работы с базой данных можно использовать PHP-код (пример доступен по [ссылка на сайт]). Код включает:
- Три константы: host, dbname, pass для подключения к базе данных (логин и имя базы данных совпадают).
- Функции connectWithDb(), disconnectDb() и get_data_from_db() для подключения, отключения и выполнения SQL-запросов соответственно. Функция get_data_from_db() возвращает результат в виде многомерного массива.
Пример SQL-запроса для выбора всех данных из таблицы staff:
SELECT * FROM staff;
Этот запрос возвращает все столбцы и строки таблицы.
Фильтрация данных
Оператор WHERE позволяет фильтровать данные. Примеры:
- WHERE id > 3: выбирает записи с id больше 3.
- WHERE price = 10: выбирает записи с price равным 10.
- WHERE price ≥ 10: выбирает записи с price больше или равно 10.
- WHERE price ≤ 10: выбирает записи с price меньше или равно 10.
- WHERE price != 10: выбирает записи с price не равным 10.
Поиск по шаблону с помощью LIKE
Оператор LIKE используется для поиска по шаблону. Символ % обозначает любое количество любых символов:
- WHERE category LIKE ‘%овощи%’: находит записи, где в поле category присутствует слово «овощи».
- WHERE category LIKE ‘овощи%’: находит записи, начинающиеся с «овощи».
- WHERE category LIKE ‘%овощи’: находит записи, заканчивающиеся на «овощи».
Комбинирование условий
Оператор AND позволяет комбинировать условия. Например:
WHERE category LIKE '%овощи%' AND id > 1
выберет записи, где категория содержит «овощи» и id больше 1.
Оператор OR позволяет выбирать записи, удовлетворяющие одному из условий. Оператор IN позволяет проверить значение на вхождение в список:
WHERE id IN (2, 3, 5)
Выберет записи, где id равно 2, 3 или 5.
Выбор конкретных столбцов
Для выборки конкретных столбцов используется конструкция:
SELECT id, price FROM staff;
Этот запрос выберет только столбцы id и price.
Выборка из нескольких таблиц
Возможна выборка данных из нескольких таблиц, однако следует учитывать, что выбирать можно только поля, присутствующие во всех указанных таблицах.
В этой статье описаны базовые принципы выборки данных из базы данных с помощью SQL. Использование операторов WHERE, LIKE, AND, OR и IN обеспечивает гибкость при фильтрации и отборе данных. Для получения более подробной информации рекомендуем обратиться к дополнительным ресурсам ([ссылка на сайт]).