JSON_path_expression supporta solo alcune sintassi di base, secondo il manuale :
JSON_path_expression::=
object_step::=
array_step::=
Un approccio alternativo consiste nell'utilizzare JSON_TABLE per convertire il JSON in una tabella relazionale e quindi proiettare e filtrare le colonne.
select value
from json_table(
'{
"notUsed": [],
"stock": [
{
"name": "eggs",
"value": "in stock"
},
{
"name": "milk",
"value": "out of stock"
}
]
}',
'$.stock[*]'
columns
(
name varchar2(100 char) path '$.name',
value varchar2(100 char) path '$.value'
)
)
where name = 'eggs'
Risultati:
VALUE
-----
in stock