Наполняем таблицу исходными данными. Как создать структуру базы данных в MySQL см.здесь и здесь
<?php include('connect.php'); // файл для подключения к бд // добавление данных в таблицу $sql = "INSERT INTO `products` (`id`, `name`, `description`, `cost`, `date_wr`) VALUES (NULL, 'Молоко', '3 литра', '150', current_timestamp()), (NULL, 'Капуста', '1 кг', '30', current_timestamp()), (NULL, 'Соль', '1 кг', '30', current_timestamp()), (NULL, 'Хлеб', '400 грамм', '60', current_timestamp()), (NULL, 'Мандарины', '1 кг', '140', current_timestamp()), (NULL, 'Сыр', '100 грамм', '200', current_timestamp()), (NULL, 'Яблоки', '1 кг', '110', current_timestamp()), (NULL, 'Бананы', '1 кг', '60', current_timestamp()), (NULL, 'Апельсины', '1 кг', '120', current_timestamp()), (NULL, 'Сахар', '1 кг', '50', current_timestamp()), (NULL, 'Куриные яйца', '10 штук', '80', current_timestamp()); "; if ($link->query($sql) === TRUE) { echo "Данные успешно добавлены в таблицу"; } else { echo "Ошибка добавления данных в таблицу" . $link->error; } $link->close(); ?>
Выборка всех данных из таблицы
<?php include('connect.php'); // файл для подключения к бд // выборка всех данных из таблицы, кроме даты $sql = "SELECT id, name, description, cost FROM products"; $result = $link->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo "№ ".$row["id"]." Наименование: ".$row["name"].", Описание: ".$row["description"].", Стоимость: ".$row["cost"]."<br>"; } } else { echo "Ничего не найдено"; } $link->close(); ?>
Результат
№ 3 Наименование: Молоко, Описание: 3 литра, Стоимость: 150.00;
№ 4 Наименование: Капуста, Описание: 1 кг, Стоимость: 30.00;
№ 5 Наименование: Соль, Описание: 1 кг, Стоимость: 30.00;
№ 6 Наименование: Хлеб, Описание: 400 грамм, Стоимость: 60.00;
№ 7 Наименование: Мандарины, Описание: 1 кг, Стоимость: 140.00;
№ 8 Наименование: Сыр, Описание: 100 грамм, Стоимость: 200.00;
№ 9 Наименование: Яблоки, Описание: 1 кг, Стоимость: 110.00;
№ 10 Наименование: Бананы, Описание: 1 кг, Стоимость: 60.00;
№ 11 Наименование: Апельсины, Описание: 1 кг, Стоимость: 120.00;
№ 12 Наименование: Сахар, Описание: 1 кг, Стоимость: 50.00;
№ 13 Наименование: Куриные яйца, Описание: 10 штук, Стоимость: 80.00;
Отсортируем наименование товара в алфавитном порядке по возрастанию (ORDER BY столбец ASC (DESC))
<?php include('connect.php'); // файл для подключения к бд // отсортируем данные по алфавиту $sql = "SELECT id, name, description, cost FROM products ORDER BY name ASC"; //сортировка данных в обратном порядке DESC //$sql = "SELECT id, name, description, cost FROM products ORDER BY name DESC"; $result = $link->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo "№ ".$row["id"]." Наименование: ".$row["name"].", Описание: ".$row["description"].", Стоимость: ".$row["cost"]."<br>"; } } else { echo "Ничего не найдено"; } $link->close(); ?>
Результат:
Теперь найдем те товары, у которых стоимость ниже 100 рублей и вес 1 кг.
<?php include('connect.php'); // файл для подключения к бд $sql = "SELECT id, name, description, cost FROM products WHERE cost<100 AND description='1 кг'"; $result = $link->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { echo "№ ".$row["id"]." Наименование: ".$row["name"].", Описание: ".$row["description"].", Стоимость: ".$row["cost"]."<br>"; } } else { echo "Ничего не найдено"; } $link->close(); ?>
Результат
№ 4 Наименование: Капуста, Описание: 1 кг, Стоимость: 30.00;
№ 5 Наименование: Соль, Описание: 1 кг, Стоимость: 30.00;
№ 10 Наименование: Бананы, Описание: 1 кг, Стоимость: 60.00;
№ 12 Наименование: Сахар, Описание: 1 кг, Стоимость: 50.00;
Если, например, надо вывести наименование товара между стоимостью 100 руб. и 150 руб. можно использовать оператор BETWEEN, запрос будет выглядеть следующем образом:
$sql = «SELECT id, name, description, cost FROM products WHERE cost BETWEEN 100 AND 150»;
Результат
№ 3 Наименование: Молоко, Описание: 3 литра, Стоимость: 150.00;
№ 7 Наименование: Мандарины, Описание: 1 кг, Стоимость: 140.00;
№ 9 Наименование: Яблоки, Описание: 1 кг, Стоимость: 110.00;
№ 11 Наименование: Апельсины, Описание: 1 кг, Стоимость: 120.00;
Найдем все продукты, которые начинаются на символ ‘C’ с помощью оператора LIKE (NOT LIKE)
$sql = «SELECT id, name, description, cost FROM products WHERE name LIKE ‘С%'»;
Результат
№ 5 Наименование: Соль, Описание: 1 кг, Стоимость: 30.00;
№ 8 Наименование: Сыр, Описание: 100 грамм, Стоимость: 200.00;
№ 12 Наименование: Сахар, Описание: 1 кг, Стоимость: 50.00;
Вывести все продукты, которые начинаются на символ ‘C’ и не менее четырех символов
$sql = «SELECT id, name, description, cost FROM products WHERE name LIKE ‘С___'»;
Результат
№ 5 Наименование: Соль, Описание: 1 кг, Стоимость: 30.00;
SQL запрос на получение количества записей в таблице — COUNT
SELECT COUNT(*) FROM products;
Вернёт: 11
SQL запрос на получение максимальной цены на товар — MAX
SELECT MAX(cost) FROM products;
Вернёт: 200
SQL запрос на получение минимальной цены на товар — MIN
SELECT MIN(cost) FROM products;
Вернёт: 30
SQL запрос на получение средней цены на товар — AVG
SELECT AVG(cost) FROM products;
Вернёт: 93.636364
SQL запрос на лимит данных — LIMIT
SELECT * FROM products LIMIT 5;
Результат:
SQL запрос на вывод только уникальных (не повторяющихся) данных из таблицы MySQL
SELECT DISTINCT(description) FROM products;
Результат