完整语法:
group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])
SELECT * FROM `sqltest`
![](https://i-blog.csdnimg.cn/blog_migrate/0b697a755afbaa035122c4a02d7b846f.png)
如果按照group_id分组,会自动去重
SELECT * FROM `sqltest` GROUP BY group_id
![](https://i-blog.csdnimg.cn/blog_migrate/86b139e224f0a1e4c35a91f5dc16e9a7.png)
想要类别按组分类集中到一起,就要用Group_concat
SELECT group_id,GROUP_CONCAT(category) FROM `sqltest` GROUP BY group_id
![](https://i-blog.csdnimg.cn/blog_migrate/a7c44265f522a8e9cdabda8dd4abfc13.png)
还有几种扩展:
①可以给类别去重
SELECT group_id,GROUP_CONCAT(DISTINCT category) FROM `sqltest` GROUP BY group_id
![](https://i-blog.csdnimg.cn/blog_migrate/c78e3bc6d19e8847e721ce2e2c7c5982.png)
②给类别排序
SELECT group_id,GROUP_CONCAT(category ORDER BY category DESC) FROM `sqltest` GROUP BY group_id
![](https://i-blog.csdnimg.cn/blog_migrate/acefed9a7bc3d4f901b524274a2d3be2.png)
③给类别更改分隔符
SELECT group_id,GROUP_CONCAT(category SEPARATOR '_') FROM `sqltest` GROUP BY group_id
![](https://i-blog.csdnimg.cn/blog_migrate/800d597fea2791c0da53c4102c3faf90.png)