Encontramos la solución a esta pregunta, al menos eso creemos. Si continuas con interrogantes déjanoslo saber en un comentario y sin dudarlo te responderemos
Para agregar el valor use el JSON array añadir operador (||
)
UPDATE jsontesting
SET jsondata = jsondata || '["newString"]'::jsonb
WHERE id = 7;
Eliminar el valor se ve así
UPDATE jsontesting
SET jsondata = jsondata - "newString"
WHERE id = 7;
La concatenación a un campo anidado se ve así
UPDATE jsontesting
SET jsondata = jsonb_set(
jsondata::jsonb,
array['nestedfield'],
(jsondata->'nestedfield')::jsonb || '["newString"]'::jsonb)
WHERE id = 7;
Para agregar a la respuesta de Evan Carroll, es posible que desee hacer lo siguiente para establecer la columna en un vacío array si esto es NULL
. El operador de adición (||
) no hace nada si la columna está actualmente NULL
.
UPDATE jsontesting SET jsondata = (
CASE
WHEN jsondata IS NULL THEN '[]'::JSONB
ELSE jsondata
END
) || '["newString"]'::JSONB WHERE id = 7;
Comentarios y calificaciones del artículo
Si eres capaz, tienes la habilidad dejar un post acerca de qué te ha gustado de esta división.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)