Dans Postgres 9.4, vous pouvez utiliser json_build_object () .
Pour votre exemple, cela fonctionne comme :
SELECT group_id,
json_agg(json_build_object('id', id, 'name', name, 'body', body))
FROM temp
GROUP BY group_id;
c'est une manière plus conviviale, Postgres nous aime :3