From: | Dmitry Dolgov <9erthalion6(at)gmail(dot)com> |
---|---|
To: | RODRIGUEZ CORTES MARIO IGNACIO <IGNACIO(dot)CORTES(at)inegi(dot)org(dot)mx> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: problem changing jsonb attribute to null value |
Date: | 2017-11-15 22:07:01 |
Message-ID: | CA+q6zcU0ZcE1Te0xULft0kou+Xnw=Oot1humv_5i7p12aF7hKg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
> On 15 November 2017 at 22:54, RODRIGUEZ CORTES MARIO IGNACIO <
IGNACIO(dot)CORTES(at)inegi(dot)org(dot)mx> wrote:
>
> I have a problem with a record in a jsonb type table, I'm trying to
> change the value of an attribute to null but it leaves me all the
> content in null and not just the value
>
> prueba=# select jsonb_set('{"v" : 0}'::jsonb, '{"v"}', to_jsonb(null));
> ERROR: no se pudo determinar el tipo polimórfico porque el tipo de
> entrada es «unknown»
>
> defining null value as a text type:
>
> prueba=# select jsonb_set('{"v" : 0}'::jsonb, '{"v"}',
> to_jsonb(null::text));
> jsonb_set
> -----------
>
> (1 fila)
>
> it leaves the record in null, when I hope it leaves it with the null
> value in attribute "v": {"v": null}
I think something like this should work:
=# select jsonb_set('{"v" : 0}'::jsonb, '{"v"}', 'null'::jsonb);
jsonb_set
-------------
{"v": null}
(1 row)
is that what you want?
From | Date | Subject | |
---|---|---|---|
Next Message | Matt Zagrabelny | 2017-11-15 22:37:04 | expanded auto and header linestyle double |
Previous Message | RODRIGUEZ CORTES MARIO IGNACIO | 2017-11-15 21:54:31 | problem changing jsonb attribute to null value |