PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Wie setze ich mit der GROUP BY-Klausel die richtigen Attributnamen für ein aggregiertes JSON-Ergebnis?

In Postgres 9.4 könnten Sie json_build_object verwenden () .

Für Ihr Beispiel funktioniert es wie folgt:

SELECT group_id, 
       json_agg(json_build_object('id', id, 'name', name, 'body', body)) 
FROM temp
GROUP BY group_id;

Dies ist eine freundlichere Art, Postgres liebt uns :3