On 2022-04-28 Th 04:16, Pavel Stehule wrote:
> Hi
>
> I am learning new JSON API, and I am not sure, how the result of
> JSON_QUERY in one case is correct. So I am asking here
>
> (2022-04-28 10:13:26) postgres=# SELECT JSON_QUERY(jsonb '[{"a":10,
> "b": 20}, {"a": 30, "b":100}]', '$.**.a' with wrapper);
> ┌──────────────────┐
> │ json_query │
> ╞══════════════════╡
> │ [10, 30, 10, 30] │
> └──────────────────┘
> (1 row)
>
> Is this result correct? I am expecting just [10, 30]
It's just a wrapper around jsonb_path_query, which hasn't changed.
# SELECT jsonb_path_query(jsonb '[{"a":10, "b": 20}, {"a": 30,
"b":100}]', '$.**.a');
jsonb_path_query
------------------
10
30
10
30
(4 rows)
If that's a bug it's not a new one - release 14 gives the same result.
cheers
andrew
--
Andrew Dunstan
EDB: https://www.enterprisedb.com