ORACLE 将json数组转成表

json_table使用

  • 方式一
SELECT 
FR.*
FROM dual ,
JSON_TABLE(‘[{"name":"hziwei", "age": 13},{"name":"hziwei", "age": 15}]‘,‘$[*]‘
COLUMNS ( name VARCHAR2(10) PATH ‘$.name‘,
                     age VARCHAR2(10) PATH ‘$.age‘
)) AS FR where age > 13;

ORACLE 将json数组转成表

  • 方式二
SELECT 
FR.*
FROM dual ,
JSON_TABLE(‘{"data": [{"name":"hziwei", "age": 13},{"name":"hziwei", "age": 15}]}‘,‘$.data[*]‘
COLUMNS (name VARCHAR2(10) PATH ‘$.name‘,
                     age NUMBER PATH ‘$.age‘
)) AS FR         
;

ORACLE 将json数组转成表

  • 从表中的json数组字段转换为表

表结构 表名:TEST
ORACLE 将json数组转成表

SELECT 
FR.*
FROM TEST,
JSON_TABLE(CONTENT,‘$[*]‘
COLUMNS ( name VARCHAR2(10) PATH ‘$.name‘,
           age NUMBER PATH ‘$.age‘
)) AS FR         
;

ORACLE 将json数组转成表

ORACLE 将json数组转成表

上一篇:四十二、JMeter通过JDBC Request向数据库批量插入表以及 删除数据


下一篇:数据库学习第二天