sql oracle вложенный josn

Имею следующее вложение в таблице

[{"choice":[{"type":"ab","id":3453,"b_id":8989,"shar":""}],"condition":"qwert"},{"choice":[{"type":"ab","id":5436,"b_id":7865,"shar":""}],"condition":"uyutor"}]

Просьба, подсказать, можно ли разбить строку на колонки в которой бы находился блок choice, блоков choice соответственно может быть как 1 так и более 2, Спасибо!


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

Автор решения: Akina
SELECT test.id json_id, parsed_json.*
FROM test,
     JSON_TABLE(val, '$[*].choice' COLUMNS ( row_number FOR ORDINALITY,
                                             type VARCHAR2(100) PATH '$.type',
                                             id INT PATH '$.id',
                                             b_id INT PATH '$.b_id',
                                             shar VARCHAR2(100) PATH '$.shar'
                                           )
               ) AS parsed_json;

fiddle

→ Ссылка