Suppose there is a row in one of the table cells:
{"value":"{\"result\":\"SUCCESS\",\"orderId\":1424,\"employerId\":2342}","description":null} Is there a way without parsing the whole construct to find the value there at some address? For example:
declare my_str varchar2(200):='{"value":"{\"result\":\"SUCCESS\",\"orderId\":1424,\"employerId\":2342}","description":null}'; begin dbms_output.put_line(my_pkg.get_json_value(my_str, 'value;result')); end; And at the exit get "SUCCESS".
I met only the code on the habr, which builds a temporary table for the entire row.
Version 11.0.6.1796.
if v_order.execution_result is not null and v_order.execution_result <> 'null' then apex_json.parse (v_order.execution_result); apex_json.parse (apex_json.get_varchar2 ('value')); if (apex_json.get_varchar2 ('result')) <> 'SUCCESS' then v_fails_counter := v_fails_counter + 1; end if;if v_order.execution_result is not null and v_order.execution_result <> 'null' then apex_json.parse (v_order.execution_result); apex_json.parse (apex_json.get_varchar2 ('value')); if (apex_json.get_varchar2 ('result')) <> 'SUCCESS' then v_fails_counter := v_fails_counter + 1; end if;- Vitaly Jandulov