PostgreSQL 更新JSON,JSONB字段的操作
直接使用
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;
執行效果如下圖:
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。
推薦閱讀:
- postgres之jsonb屬性的使用操作
- 對Postgresql中的json和array使用介紹
- postgresql 實現修改jsonb字段中的某一個值
- postgresql的jsonb數據查詢和修改的方法
- PostgreSQL自動更新時間戳實例代碼