Mysql 是否返回具有多对多关系的单行?
我有一个Mysql 是否返回具有多对多关系的单行?,mysql,Mysql,我有一个products表、一个users表和一个product\u user透视表。它是以标准的多对多方式建立的 我希望得到一个有所有用户的产品 因此,我执行: SELECT * FROM products LEFT JOIN product_user ON product_user.product_id=products.id LEFT JOIN users ON users.id=product_user.user_id WHERE users.id = 1 我返回了多行,所有行都
products
表、一个users
表和一个product\u user
透视表。它是以标准的多对多方式建立的
我希望得到一个有所有用户的产品
因此,我执行:
SELECT * FROM products
LEFT JOIN product_user
ON product_user.product_id=products.id
LEFT JOIN users
ON users.id=product_user.user_id
WHERE users.id = 1
我返回了多行,所有行都具有相同的产品数据,但每行都有不同的用户
如何返回一个
产品行,并将所有用户数据附加到该行?您必须有一种方法将用户数据连接/聚合到一列中。例如,您可以用逗号连接用户ID。考虑应用程序代码中的数据显示问题。否则,请参见GROUP\u CONCAT()