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

PostgreSQL中JSON嵌套属性查询返回NULL问题求助

解决PostgreSQL JSON嵌套属性获取返回NULL的问题

问题核心是**Amount是嵌套在TeeTimeReserveRecord子对象中的属性**,你当前的查询直接从ez_links根节点取Amount,自然找不到对应值返回NULL。

正确查询写法

以下几种方式都可以正确获取嵌套的Amount值:

  1. 链式使用->操作符(返回JSON类型值):
select ez_links, ez_links->'TeeTimeReserveRecord'->'Amount' AS price
FROM bookings
limit 1
  1. 链式使用->>操作符(返回文本类型值,适合直接使用数值的场景):
select ez_links, ez_links->'TeeTimeReserveRecord'->>'Amount' AS price
FROM bookings
limit 1
  1. 使用#>路径操作符(通过路径数组访问嵌套属性,返回JSON类型值):
select ez_links, ez_links#>'{TeeTimeReserveRecord, Amount}' AS price
FROM bookings
limit 1

操作符说明

  • ->:提取JSON对象属性,返回JSON类型(本例中会返回"662")
  • ->>:提取JSON对象属性,直接返回文本类型(本例中会返回662)
  • #>:通过指定路径数组(格式{父节点,子节点}),直接定位嵌套的JSON属性

执行上述任意语句后,price列都会返回你期望的662值。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 18:21:27