2016-08-17 232 views
0

我正在開發一個API以返回場館列表。將SQL分組爲一列中逗號分隔的值列表

SELECT 
    `sample`.Fascia AS 'Fascia', 
    `sample`.Category AS 'Category' 
FROM 
    `sample` 
WHERE 
    `sample`.`PostCode` LIKE '%SW1%' 

並返回一個場館列表。

Fascia  | Category 
------------+------------- 
Sainsbury's | Supermarkets 
Waitrose | Supermarkets 
99p Store | Hardware 
T K Max  | Clothing 

我該如何修改查詢以將類別組合在一起,並創建一個將這些場所列爲逗號列表的抽象列。因此,像這樣

Category  | Grouped Venues 
--------------+------------------------ 
Supermarkets | Sainsbury's, Waitrose 
Hardware  | 99p Store 
Clothing  | T K Max 

回答

1

使用GROUP_CONCAT:

 SELECT 
     Group_concat(`sample`.Fascia) AS 'Grouped Venues', 
     `sample`.Category AS 'Category' 
     FROM 
     `sample` 
     WHERE `sample`.`PostCode` LIKE '%SW1%' 
     Group by `sample`.Category 
+0

乾杯的人。這就像一個魅力。 –