Postgres jsob选择特定的数组字段

时间:2018-12-15 11:53:37

标签: json postgresql jsonb

我有一个名为“ data”的jsonb列的postgreSQl 10.2表“ snapshots”

{
  "entries": [
    {
      "userName": "John",
      "age": "15"
    },
    {
      "userName": "Max",
      "age": "42"
    }]
{

需要查询以从数组中的条目中仅选择用户名。 我尝试过了

select data->'entries'->>'userName' from snapshots;

但是,它当然不会返回我需要的值。

1 个答案:

答案 0 :(得分:1)

使用横向连接中使用的函数jsonb_array_elements()使json数组嵌套:

select item->>'userName'
from snapshots
cross join jsonb_array_elements(data->'entries') as item