Mysql 获取单个语句中的外键列表

Mysql 获取单个语句中的外键列表,mysql,sql,Mysql,Sql,我试图在一个查询中获取与产品相关的所有单元 非常感谢您的帮助 Table Product ID Product_Name 1 Tomato 2 Banana 3 Sugar 4 Potatto 在加入产品和单位后,您可以通过产品列对结果进行分组,然后使用分组_CONCAT聚合函数获得产品所需的单位列表: SELECT p.ID, p.Product_Name, GROUP_CONCAT(CONCAT('[Quantity:', u.Quantity, '

我试图在一个查询中获取与产品相关的所有单元

非常感谢您的帮助


Table Product 

ID  Product_Name
1    Tomato 
2    Banana
3    Sugar
4    Potatto 

在加入
产品
单位
后,您可以通过产品列对结果进行
分组
,然后使用
分组_CONCAT
聚合函数获得产品所需的单位列表:

SELECT p.ID, p.Product_Name, GROUP_CONCAT(CONCAT('[Quantity:', u.Quantity, '  Unit:',u.Unit,']')) as UnitList
FROM Units u JOIN Product p
ON p.ID = u.ProductId
WHERE p.ID = 3 // or any other product id
GROUP BY p.ID, p.Product_Name

其他三列是从哪里来的???你想要什么结果?我想要ID 1,Product_Name Sugar,[数量1单位千克][数量2单位千克][数量3单位千克][数量5单位千克]你想要结果水平还是垂直显示
数量
列?水平方向,只有一行输出我想要获取产品,在产品中,我希望将这些单位列在列表中。我更新了答案,并使用
join
提供了一个解决方案。但现在我得到了4行作为输出。我想要1行输出
Expected Result 

 ID 1, Product_Name Sugar, [Quantity 1 Unit KG] [Quantity 2 Unit KG] [Quantity 3 Unit KG] [Quantity 5 Unit KG]
SELECT p.ID, p.Product_Name, GROUP_CONCAT(CONCAT('[Quantity:', u.Quantity, '  Unit:',u.Unit,']')) as UnitList
FROM Units u JOIN Product p
ON p.ID = u.ProductId
WHERE p.ID = 3 // or any other product id
GROUP BY p.ID, p.Product_Name