背景
使用group by 聚合函数后需要查询非聚合字段的值,拼接到一个字段中返回
方案
两张表 user 用户表 user_hobby 用户兴趣表
select u.hobby_id, string_agg(distinct h.name, ','), count(u.id)
from user u
left join user_hobby h on u.hobby_id = h.id
group by u.hobby_id
不需要去重,可去除distinct
使用group by 聚合函数后需要查询非聚合字段的值,拼接到一个字段中返回
两张表 user 用户表 user_hobby 用户兴趣表
select u.hobby_id, string_agg(distinct h.name, ','), count(u.id)
from user u
left join user_hobby h on u.hobby_id = h.id
group by u.hobby_id
不需要去重,可去除distinct