Re: update field in jsonb - Mailing list pgsql-general

From Ivan E. Panchenko
Subject Re: update field in jsonb
Date
Msg-id ae52b2f2-937d-9f4b-bb79-acb0377f991e@postgrespro.ru
Whole thread Raw
In response to update field in jsonb  (support-tiger <support@tigernassau.com>)
List pgsql-general
23.11.2017 04:45, support-tiger пишет:
> is there a way to update a single field in jsonb without replacing the 
> entire json document - couldn't find an example
>
> for example
>
> create table test (id primary key, data jsonb);
>
> insert into test ({"name":"bill", "age":29});
>
>  ?? update test   set data->age = 30
>
>
When a record in PostgeSQL is UPDATEd, its new version is created. So 
such partial JSON update would be not more than some syntax sugar. That 
is why it is not yet implemented, though plans for that exist.

Now you have to do something like:

UPDATE test SET data = jsonb_set(data, ARRAY['age'], to_jsonb(30)) WHERE ..


pgsql-general by date:

Previous
From: support-tiger
Date:
Subject: update field in jsonb
Next
From: Oleg Bartunov
Date:
Subject: Re: update field in jsonb