在 PL SQL 中解析 JSON 数组 APEX_JSON
Posted
技术标签:
【中文标题】在 PL SQL 中解析 JSON 数组 APEX_JSON【英文标题】:Parse JSON array APEX_JSON in PL SQL 【发布时间】:2020-02-16 07:05:52 【问题描述】:我有以下 JSON 对象 -
"items": [
"tableName": "contacts",
"count": 1,
"columnNames": [
"id"
],
"rows": [
[
"45"
]
]
],
"links": [
"rel": "self",
,
"rel": "describedby",
]
我正在尝试从行中提取值 - 我需要值 45。
我尝试使用 -
进行提取row_id := apex_json.get_number ('rows[%d]', 1);
我怎样才能提取它? 提前致谢。
【问题讨论】:
【参考方案1】:这是一个例子:
declare
l_json_val apex_json.t_values;
l_clob clob;
l_row_val varchar2(255);
begin
l_clob := q'-
"items": [
"tableName": "contacts",
"count": 1,
"columnNames": [
"id"
],
"rows": [
[
"45"
]
]
],
"links": [
"rel": "self",
,
"rel": "describedby",
]
-';
apex_json.parse(p_values => l_json_val, p_source => l_clob, p_strict => false);
l_row_val := apex_json.get_varchar2(p_path => 'items[1].rows[1][1]', p_values => l_json_val);
dbms_output.put_line(l_row_val);
end;
请注意,带有 apex_json 的路径表达式使用 1 基数组索引,而不是 0。
【讨论】:
以上是关于在 PL SQL 中解析 JSON 数组 APEX_JSON的主要内容,如果未能解决你的问题,请参考以下文章
运行时解析 PL/SQL 的 Oracle Apex Cards 视图
ORACLE apex - 使用 PL/SQL 循环通过复选框项目
如何在 oracle apex 中将 Content-Type=application/xml 用于 pl/sql 块