Buenas tardes a todos: Tengo un problema con un registro en una tabla de tipo jsonb, estoy tratando de cambiar el valor de un atributo a null pero me deja todo el contenido en null y no solo el valor, les muestro un ejemplo primero de como definir el atributo null:
prueba=# select jsonb_build_object('v', null); jsonb_build_object -------------------- {"v": null} (1 fila) asi esta bien definido el objeto, luego al tratar de cambiar el valor con jsonb_set con algún valor de tipo jsonb, lo hace de forma correcta: prueba=# select jsonb_set('{"v" : 0}'::jsonb, '{"v"}', to_jsonb(1)); jsonb_set ----------- {"v": 1} (1 fila) pero si intento poner el valor de "v" en null al parecer hay conflicto: 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» o bien casteando el null como si fuera de tipo texto prueba=# select jsonb_set('{"v" : 0}'::jsonb, '{"v"}', to_jsonb(null::text)); jsonb_set ----------- (1 fila) deja todo el registro en null, cuando yo esperaría que lo dejara con el valor: {"v": null} Les agradezco su ayuda!!!! Saludos!!!!