MySQL Group_Concat 两个表在一起

MySQL Group_Concat two tables together

我正在尝试根据我在 x 天内记录的所有价格对 table 中的数据进行分组。我在使用 SQL 语句时遇到问题,这是我当前的语句

SELECT *, GROUP_CONCAT(Price) AS Prices FROM product_prices GROUP BY Product,Day

这是我的 product_prices table;

+---------+--------------+
| Product | Day | Price  |
+---------+--------------+
|    Phone| 1   |  100   |
|  Speaker| 1   |  50    |
|   Phone | 2   |  230   |
|  Speaker| 2   |  80    |
+---------+--------------+

我希望价格在 1 table 中分组,像这样

+---------+----------+
| Product | Prices   |
+---------+----------+
|    Phone| 100, 230 |
|  Speaker| 50, 80   | 
+---------+----------+

您必须删除 GROUP BY 子句中的 Day。此外,将 * 替换为 Product:

SELECT
  Product, 
  GROUP_CONCAT(Price) AS Prices 
FROM product_prices 
GROUP BY Product

ONLINE DEMO

如果您想 select 从最低到最高的价格,您应该在 group_concat 语句中使用 order by

SELECT Product, 
GROUP_CONCAT(Price ORDER BY Price) AS Prices 
FROM product_prices 
GROUP BY Product

SQLFiddle