直接使用
update 表名 set 列名 = (jsonb_set(列名::jsonb,'{key}','"value"'::jsonb)) where 条件
要注意里面的单引号和双引号。
补充:向PostgreSQL中json中加入某个字段 或者更新某个字段的SQL语句
需求:通过SQL的方式,对JSON里面的某个字段统一处理,更新成一个新值
1、向PostgreSQL中json中加入某个字段。例如:向users表中id为3的data列中加入 {“uptate_data”: “7”}
执行SQL:
update users set data = '{"uptate_data": "7"}'::jsonb where id = 3;
执行效果如下图:
2、向PostgreSQL中json中更新某个字段。例如:例如:向users表中id为3的data列中再加入 {“uptate_minute”: “10”}
执行SQL:
update users set data = data::jsonb || '{"uptate_minute": "10"}'::jsonb where id = 3;
执行效果如下图:
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
您可能感兴趣的文章:- postgresql的jsonb数据查询和修改的方法
- postgresql 实现修改jsonb字段中的某一个值
- 介绍PostgreSQL中的jsonb数据类型
- 关于PostgreSQL JSONB的匹配和交集问题