在ORACLE PL/SQL中使用JSON_VALUE检索嵌套键

xe55xuns  于 2023-02-18  发布在  Oracle
关注(0)|答案(1)|浏览(177)

我知道这会返回“2”:
选择JSON值('{“x”:“1”,“y”:{“a”:“2”}}}','$.y. a ')作为来自DUAL的值;
如何从该查询返回“a”:
选择JSON值('{“x”:“1”,“y”:{“a”:“2”}}','???')作为来自DUAL的值;
这将返回空值
选择JSON值('{“x”:“1”,“y”:{“a”:“2”}}','$. y ')作为来自DUAL的值;

uoifb46i

uoifb46i1#

假设您使用的是Oracle 12或更高版本(这是引入JSON支持的时候),那么要获取y属性作为JSON,您可以使用:

SELECT y
FROM   JSON_TABLE(
         '{"x": "1", "y": {"a": "2"}}',
         '$'
         COLUMNS
           y VARCHAR2(4000) FORMAT JSON PATH '$.y'
       );

其输出:
| 是|
| - ------|
| {" a ":" 2 "}|
fiddle

相关问题