Как извлечь JSON данные из CLOB колонки и вывести их в табличном виде?

Скажите, пожалуйста, как можно извлечь данные из CLOB колонки и вывести в табличном виде JSON данные, которые в нем хранятся?


Ответы (1 шт):

Автор решения: 0xdb

Зависит от того, что находится в CLOB колонке, но в простейшем случае:

create table jsondoc (id int, doc clob check (doc is json))
/
insert into jsondoc values (
    1, '{"items": [{"id":111,"name":"item 1"},{"id":222,"name":"item 2"}]}');

select js.id, js.name
from jsondoc, json_table (doc,'$.items[*]' columns 
    id   number path '$.id',
    name varchar2(8) path '$.name') js

Даст желаемый результат:

        ID NAME    
---------- --------
       111 item 1  
       222 item 2  
→ Ссылка