Установить json значений объектов из массива в postgresql - PullRequest
0 голосов
/ 19 июня 2020

У меня есть массив JSON объектов в PostgreSQL внутренних данных. json, это выглядит так

[
  { "10" : [1,2,3,4,5] },
  { "8" : [5,4,3,1,2] },
  { "11" : [1,3,5,4,2] }
]

Данные взяты из оператора select

 SELECT

 ARRAY((SELECT json_build_object(station_id,
   ARRAY((SELECT 

COALESCE((SELECT SUM(prodtakt_takt)
FROM psproductivity.prodtakt 
WHERE prodtakt_start::date = generate_series.shipping_day_sort::date
AND station_id = prodtakt_station_id
),0)
   FROM generate_series)) ) FROM psproductivity.station WHERE (SELECT COALESCE(SUM(prodtakt_takt),0) FROM psproductivity.prodtakt WHERE station_id = prodtakt_station_id) > 0 
    )) AS json, ...

Где generate_series - это просто серия дат.

Теперь мне нужно это и преобразовать его в формат объекта JSON

{
  "x" : "x",
  "jsondata" : {
    "10" : [1,2,3,4,5]
    "8" : [5,4,3,1,2]
    "11" : [1,3,5,4,2]
  }
}

программное обеспечение, над которым я работаю, использует c3. js для обработки данных в графики, поэтому Мне нужно изменить этот формат. Я думаю, что мне нужно начать с чего-то вроде

json_build_object( 'jsondata',( SELECT FROM json_each(unnest(data.json)) ) )

Но я не могу придумать никакого маршрута с этим logi c. Добавить x в объект JSON очень просто. Я уверен, что смогу выполнить эту часть, если смогу просто реорганизовать массив

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...