0

我有两个表 - 类别和子类别,它们都有 id_category。
换句话说,在类别中

id_category: 3
category_name: Security

子类别中:

id_subcategory: 1
id_category: 3
subcategory_name: Antivirus

我在同一类别中有多个项目,所以我希望它列出这样的项目:
安全性:防病毒、间谍软件、防火墙。

另外,我希望它对其他类别做同样的事情,所以最后它会像这样列出:
安全性:防病毒、间谍软件、防火墙。
多媒体:音频、视频、图像。

我不知道该怎么做。我四处寻找并尝试了不同的东西,但对我没有任何帮助。

4

1 回答 1

2

您可以使用GROUP_CONCAT聚合函数:

SELECT
  category_name,
  GROUP_CONCAT(subcategory_name)
FROM
  category INNER JOIN subcategory
  ON subcategory.id_category=category.id_category
GROUP BY
  category_name

在这里看小提琴。

于 2013-02-15T19:11:34.533 回答