drop table if exists the_table cascade;
create table the_table (id integer, the_column jsonb);
insert into the_table values (1, '{"key1": {"key2": { "key3": "value"}}}'::jsonb);
insert into the_table values (2, '[{"name": "timeSampleRPM", "interval": 30, "maxRegister": 18, "minRegister": 18}, {"name": "timeSampleSpeed", "interval": 30, "maxRegister": 19, "minRegister": 19}, {"name": "timeSampleCurON", "interval": 30, "maxRegister": 22, "minRegister": 22}, {"name": "timeSampleLED", "interval": 30, "maxRegister": 20, "minRegister": 20}, {"name": "timeSampleNormal", "interval": 30, "maxRegister": 0, "minRegister": 0}]');
update the_table
set the_column = jsonb_set(the_column,'{1,interval}','120',false)
where id =2;
--如何取到对应"name"="timeSampleRPM" 的index '{1,interval}' 1的index
select id, jsonb_pretty(the_column)
from the_table;
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。