获取一列中具有共同值的不同值的列表

时间:2017-03-17 06:23:44

标签: mysql

我在数据库中有一个产品编号和帐号的表格。我想创建一个列出哪些帐户购买了每个产品。见下面的示例。

table purchases<br>
|product_id|account_id|
|1|8|
|2|7|
|2|8|
|3|8|
|3|9|

所需的查询输出:

|product_id|accounts|
|1|8|
|2|8,7|
|3|8,9|

1 个答案:

答案 0 :(得分:3)

使用group_concat应该可以解决问题:

SELECT   product_id, GROUP_CONCAT(DISTINCT account_id) AS accounts
FROM     purchases
GROUP BY product_id

<强>输出:

enter image description here

在这里演示:

Rextester