Обсуждение: JSONB in-place updates?

Поиск
Список
Период
Сортировка

JSONB in-place updates?

От
kelas
Дата:
Are there any plans to add "in-place at-depth" update operator for JSONB type, e.g.:

UPDATE test SET attrs->'anwser' = 42 where attrs->'answer' = 41

Re: JSONB in-place updates?

От
Josh Berkus
Дата:
On 04/14/2014 09:27 AM, kelas wrote:
> Are there any plans to add "in-place at-depth" update operator for JSONB
> type, e.g.:
> 
> UPDATE test SET attrs->'anwser' = 42 where attrs->'answer' = 41
> 

Plans, yes.  But not until 9.5, or maybe as an extension.

-- 
Josh Berkus
PostgreSQL Experts Inc.
http://pgexperts.com



Re: JSONB in-place updates?

От
Michael Paquier
Дата:
On Tue, Apr 15, 2014 at 5:16 AM, Josh Berkus <josh@agliodbs.com> wrote:
> On 04/14/2014 09:27 AM, kelas wrote:
>> Are there any plans to add "in-place at-depth" update operator for JSONB
>> type, e.g.:
>>
>> UPDATE test SET attrs->'anwser' = 42 where attrs->'answer' = 41
>>
>
> Plans, yes.  But not until 9.5, or maybe as an extension.
A custom function of the type find_and_modify(jsonb_data, key_name,
new_value) combined with the uniqueness of jsonb keys would be a good
workaround for now.
Regards,
-- 
Michael