В PostgreSQL, как добавить список в существующий объект JSON, используя JSONB - PullRequest
0 голосов
/ 26 февраля 2019

Этот код:

do
$j$
declare arr text[]; i int; num text; obj jsonb; jb_arr jsonb[];

begin

        jb_arr = array_append(jb_arr, jsonb_build_object('k', 'acg', 'v', 'val'));
        jb_arr = array_append(jb_arr, jsonb_build_object('k', 'xyz', 'v', 'xxx'));

        obj = (select '{ "cmds":[]}'::jsonb);

        RAISE NOTICE '%', to_jsonb(jb_arr); 

        RAISE NOTICE '%', obj;

end;
$j$

Выводит это:

[{"k": "acg", "v": "val"}, {"k": "xyz", "v": "xxx"}]
{"cmds": []}

Как мне объединить эти два, чтобы я получил следующее:

{"cmds": [{"k": "acg", "v": "val"}, {"k": "xyz", "v": "xxx"}]}

Спасибо!

1 Ответ

0 голосов
/ 26 февраля 2019

вот как: (выберите json_build_object ('cmds', jb_arr));

...