De JSON_path_expression ondersteunt slechts enkele basissyntaxis, volgens de handleiding :
JSON_path_expression::=
object_step::=
array_step::=
Een alternatieve benadering is om JSON_TABLE te gebruiken om de JSON om te zetten in een relationele tabel en vervolgens de kolommen te projecteren en te filteren.
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'
Resultaten:
VALUE
-----
in stock