You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何更新jsonb列的内部值?以指定classifiedId的book.name更新为例

更新PostgreSQL JSONB字段指定属性的方法

核心SQL语句

要实现需求,你可以使用PostgreSQL的jsonb_set函数,结合条件过滤来更新目标条目:

UPDATE 你的表名
SET external_ids = jsonb_set(
    external_ids,
    '{book,name}',
    '"new name"'
)
WHERE external_ids->>'classifiedId' = '665';

语句说明

  • jsonb_set函数:用于修改JSONB字段的指定路径值,参数分别为:
    • 目标JSONB列(external_ids)
    • 要修改的属性路径('{book,name}',表示book对象下的name属性)
    • 新的属性值(注意要加双引号,因为JSON字符串需要引号包裹)
  • WHERE条件:通过->>操作符提取classifiedId的文本值,筛选出classifiedId等于665的条目

验证更新结果

执行完更新后,可以用以下语句验证:

SELECT external_ids->'book'->>'name' AS book_name
FROM 你的表名
WHERE external_ids->>'classifiedId' = '665';

内容的提问来源于stack exchange,提问作者NeverSleeps

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 17:12:09