I Postgres 9.4 kan du använda json_build_object () .
För ditt exempel fungerar det så här:
SELECT group_id,
json_agg(json_build_object('id', id, 'name', name, 'body', body))
FROM temp
GROUP BY group_id;
det här är ett mer vänligt sätt, Postgres älskar oss :3