【发布时间】:2015-11-19 08:54:41
【问题描述】:
我的目标是使用 PHP 和 MySQL 从数据库中选择与特定类别相关的所有项目。 使用下面的脚本,我可以选择所有具有相关项目的类别。
$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' FROM products p INNER JOIN categories c ON p.category_id = c.id GROUP BY p.category_id"