Re: Is there a way to fix this ugliness
От | Karl Czajkowski |
---|---|
Тема | Re: Is there a way to fix this ugliness |
Дата | |
Msg-id | 20160909152252.GA28678@moraine.isi.edu обсуждение исходный текст |
Ответ на | Is there a way to fix this ugliness (Tim Uckun <timuckun@gmail.com>) |
Ответы |
Re: Is there a way to fix this ugliness
|
Список | pgsql-general |
On Sep 10, Tim Uckun modulated: > I am trying to get the child elements of a one to many table to be > rolled up into a json field in the parent table. The query I am running > is... The problem is aggregating over the results of the left-outer join, which introduces NULLs. You can try pushing that down into a sub-query to create one image row per observation prior to joining: SELECT ob.id, im.images FROM observations ob LEFT OUTER JOIN ( SELECT observation_id, json_agg(row_to_json(im.*)) AS images FROM images im GROUP BY observation_id ) im ON (ob.id = im.observation_id) ; you might use COALESCE in the top-level SELECT if you want to replace any NULL im.images with a different empty value constant... Karl
В списке pgsql-general по дате отправления: