PostgreSQL JSON路径表达式:查找具有特定键的第一个数组元素。

4

我需要一个JsonPath表达式,它可以返回具有"key"属性的数组的第一个元素。

我的意思是和这个查询得到的结果相同:

SELECT
  j
FROM
jsonb_array_elements(
    '[
      {"key": "foo"},
      {"other": "bar"},
      {"key":  "baz", "other": "blah"}
    ]'::JSONB
) j
WHERE
  j ? 'key'
LIMIT 1

我的查询目前看起来像这样,但是不起作用。

SELECT
    jsonb_path_query(
      '[
        {"key": "foo"},
        {"other": "bar"},
        {"key":  "baz", "other": "blah"}
      ]'::JSONB,
      '$[?(@.key)] [0]')
1个回答

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接