查询语句通过某字段去group by时,相同列的字段默认会取第一条数据的值,这时候会用到聚合函数例如sum(score)计算某字段的和,max(score)计算某字段的最大值。
group_concat()是会将相同字段拼接,默认逗号,例如
select group_concat(`name`) AS roleNames from role_table group by user_id
查询结果:roleNames:测试权限2,财务角色,操作岗
或选择拼接符拼接,用SEPARATOR指定:
select group_concat(`name` SEPARATOR '-') AS roleNames from role_table group by user_id
查询结果:roleNames:财务角色-操作岗-测试权限2