Моя цель - выбрать все элементы, относящиеся к определенной категории из базы данных с PHP и MySQL. Используя приведенный ниже сценарий, я могу выбрать все категории с соответствующими элементами.MySQL/PHP: как отображать только одну категорию со связанными объектами
$sql = query("SELECT bike AS 'cat_name', c.image AS 'image', p.title AS 'product_name'
FROM products p
INNER JOIN categories c
ON p.category_id = c.id");
while($row = mysqli_fetch_array($sql)) {
echo $row['cat_name'].'<br />';
echo $row['product_name'].'<br />';
echo $row['image'];
}
Это результат:
велосипед
пункт 1
пункт 2
пункт 3
...
велосипед
пункт 1
пункт 2
пункт 3
...
Результат выше не отражает желаемого результата. Я хотел бы иметь только одну категорию, выбранную с соответствующими пунктов, как это:
велосипед
пункт 1
пункт 2
пункт 3
...
Вам нужно использовать 'Group_concat' –
попытаться выполнить запрос в консоли msql и посмотреть результат –
Я использовал следующий скрипт: «SELECT bike AS 'cat_name', c.image AS 'image', GROUP_CONCAT (p.title) AS 'product_name' ОТ продуктов p ВХОДНЫЕ СТАТИСТИКИ категории c ON p.category_id = c .id GROUP BY p.category_id " – user4265789