Я хочу добавить новый элемент массива в a3 ниже json:
{
"a1": "e1",
"a2": {
"b1": "y1",
"b2": "y2"
},
"a3": [{
"arr1": "1"
},
{
"arr2": "2"
}
]
}
Поэтому я хочу, чтобы выше json был таким:
{
"a1": "e1",
"a2": {
"b1": "y1",
"b2": "y2"
},
"a3": [{
"arr1": "1"
},
{
"arr2": "2"
},
{
"arr3": "3"
}
]
}
Я могу добавить новыйэлемент с командой ниже.Но когда дело доходит до массива, я не могу найти способ добавить новый элемент.
SELECT jsonb_set('{ "a1": "e1", "a2": { "b1": "y1", "b2": "y2" }, "a3": [{ "arr1": "1" }, { "arr2": "2" }] }'::jsonb,
'{a2,b3}',
'"4"');
Какую команду я могу использовать, чтобы добавить {"arr3": "3"} к a3?
edit: если arr3 уже существует, команда должна изменить свое значение.Не следует добавлять дубликаты {"arr3": "3"}.