select
b.bid, b.oid, b.bed_name, b.meta, b.create_time, b.update_time,
string_agg(g.group_name,',') AS groupNames
from bed as b
LEFT JOIN bed_group bg ON bg.bid = b.bid
LEFT JOIN bgroup g ON g.gid = bg.gid
GROUP BY b.bid
select
b.bid, b.oid, b.bed_name, b.meta, b.create_time, b.update_time,
string_agg(g.group_name,',') AS groupNames
from bed as b
LEFT JOIN bed_group bg ON bg.bid = b.bid
LEFT JOIN bgroup g ON g.gid = bg.gid
GROUP BY b.bid