In Postgres 9.4 zou je json_build_object kunnen gebruiken () .
Voor jouw voorbeeld werkt het als volgt:
SELECT group_id,
json_agg(json_build_object('id', id, 'name', name, 'body', body))
FROM temp
GROUP BY group_id;
dit is een vriendelijkere manier, Postgres houdt van ons :3