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
如果您想 select 从最低到最高的价格,您应该在 group_concat 语句中使用 order by
:
SELECT Product,
GROUP_CONCAT(Price ORDER BY Price) AS Prices
FROM product_prices
GROUP BY Product
我正在尝试根据我在 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
如果您想 select 从最低到最高的价格,您应该在 group_concat 语句中使用 order by
:
SELECT Product,
GROUP_CONCAT(Price ORDER BY Price) AS Prices
FROM product_prices
GROUP BY Product