2011-03-25 45 views
2

我有如下表:返回来自不同行的列表到一个单一的领域

|animal | name | 
|----------------| 
|dog | Fido | 
|----------------| 
|dog | Spot | 
|----------------| 
|dog | Lassie | 
|----------------| 
|cat | Sue | 
|----------------| 
|cat | Ace | 
|----------------| 
|cat | Felix | 
|----------------| 
|pig | Porky | 
|----------------| 
|pig | Arnold | 
|----------------| 

我需要一个SQL查询将返回以下

dog | Fido, Spot, Lassie 
cat | Sue, Ace, Felix 
pig | Porky, Arnold 

回答

2
select animal, group_concat(name) 
from your_table 
group by animal 
+0

GROUP_CONCAT?他们什么时候提出的?谢谢。 – Jeff 2011-03-25 16:24:20

+1

很酷。以下是手册页面:http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html#function_group-concat – 2011-03-25 16:24:30

+0

根据手册,在MySQL 4.1中添加了“GROUP_CONCAT()”。 – 2011-03-25 16:36:16

相关问题