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

PostgreSQL 14中如何访问jsonb字段内的指定key?

PostgreSQL 针对jsonb类型提供了原生的取值运算符,不需要调用额外内置函数即可实现需求,不同场景的查询写法如下:

1. 直接查询sub_total的值

如果需要保留返回值的jsonb类型,使用->运算符:

SELECT total->'sub_total' AS sub_total FROM 替换为你的实际表名;

如果需要直接获取文本格式的纯值,使用->>运算符:

SELECT total->>'sub_total' AS sub_total FROM 替换为你的实际表名;

2. 按sub_total的值筛选行

如果需要筛选出sub_total符合特定条件的记录,示例如下(假设sub_total存储的是数值类型):

SELECT * FROM 替换为你的实际表名 
WHERE (total->>'sub_total')::numeric > 100;

补充常用场景处理

  • 若部分行的total字段不存在sub_total键,查询会返回null,可通过COALESCE设置默认值:
SELECT COALESCE(total->>'sub_total', '0') AS sub_total FROM 替换为你的实际表名;
  • 若需要仅查询包含sub_total键的行,可使用?运算符判断键是否存在:
SELECT * FROM 替换为你的实际表名 WHERE total ? 'sub_total';

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 11:45:07