暂无图片
暂无图片
暂无图片
暂无图片
1
暂无图片

[译] 使用MySQL GROUP_CONCAT()创建逗号分隔的列表

1569
原文链接:https://joshuaotwell.com/create-a-comma-separated-list-with-mysql-group_concat/

原文作者:Joshua Otwell

在这篇博文中,我们将学习如何使用MySQL GROUP_CONCAT()函数将一个表按照某一列进行分组并且用逗号分隔。

我会使用 ‘group_member’ 表来查询数据和做演示示例。 group_member表有4个不同的组:100、200、300和400。

group_members_query.png

group_member

 我们如果需要把上表按照member_name的首字母来排序且放到各自的组里面,可以使用GROUP_CONCAT()函数,并且用group_num来进行分组,同时指定逗号作为分隔。

 如下:

mysql_group_concat.png
MySQL GROUP_CONCAT() function

 结果如下:

group_concat_results1.png
group_concat_results

译者注:
 测试sql如下:

CREATE TABLE group_member(group_num int,member_name varchar(20)); insert into group_member values (100,'Josh'); insert into group_member values (100,'Andy'); insert into group_member values (100,'Sally'); insert into group_member values (200,'Beth'); insert into group_member values (200,'Rick'); insert into group_member values (300,'Harry'); insert into group_member values (400,'Dorothy'); insert into group_member values (400,'Johhny'); insert into group_member values (400,'Kimberly'); insert into group_member values (400,'Wilson'); mysql> select * from group_member; +-----------+-------------+ | group_num | member_name | +-----------+-------------+ | 100 | Josh | | 100 | Andy | | 100 | Sally | | 200 | Beth | | 200 | Rick | | 300 | Harry | | 400 | Dorothy | | 400 | Johhny | | 400 | Kimberly | | 400 | Wilson | +-----------+-------------+ 10 rows in set (0.00 sec) SELECT group_num, GROUP_CONCAT(member_name ORDER BY member_name ASC SEPARATOR ',') AS member_list FROM group_member GROUP BY group_num; +-----------+--------------------------------+ | group_num | member_list | +-----------+--------------------------------+ | 100 | Andy,Josh,Sally | | 200 | Beth,Rick | | 300 | Harry | | 400 | Dorothy,Johhny,Kimberly,Wilson | +-----------+--------------------------------+ 4 rows in set (0.00 sec) '''
复制
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

墨天轮福利君
暂无图片
2年前
评论
暂无图片 0
您好,您已成功参与“墨力翻译计划”,有机会入选“月度最佳译文”🏆 💪加油,辛勤译者、月度翻译官等你角逐!
2年前
暂无图片 点赞
评论