我有一个数据库。从这个数据库中,我查询并收到了结果:
Breed | Name
Mastiff | John
Golden | Jojo
Shih Tzu| Mimi
Poodle | John
Labrador| Jojo
Mastiff | Jojo
我希望了解如何操作数据,使结果看起来像这样——或者(无论SQL操作过程如何(
Breed | Names
Mastiff | John, Jojo
Labrador| Jojo
Golden | Jojo
Shih Tzu| Mimi
Poodle | Jojo
基本上,品种的所有名字都指向它们。类似COUNT((,但适用于字符串
您可以使用GROUP_CONCT 来完成此操作
SELECT
Breed,
GROUP_CONCAT(Name ORDER BY Name SEPARATOR ', ') Names
FROM tbl
GROUP BY Breed
ORDER BY Breed;
在MySQL中,可以使用字符串聚合函数group_concat()
:
select breed, group_concat(name) names
from mytable
group by breed