PLSQL遍历JSON对象提取group字段存入数组并比对的实现方法
问题解答
完全可以将提取到的group字段值存储为数组/表类型的jsonGroup变量,核心逻辑是遍历原始JSON数组提取对应字段值,再存入集合类变量即可,以下是几种常见开发场景的实现示例:
JavaScript 实现
// 原始JSON数据 const rawData = [{"group":"groupa","status":"active"},{"group":"groupb","status":"inactive"}]; // 提取所有group字段生成数组 const jsonGroup = rawData.map(item => item.group); // 匹配比对示例 const targetGroup = 'groupc'; if (jsonGroup.includes(targetGroup)) { // 匹配成功后的业务逻辑 }
Python 实现
# 原始JSON数据 raw_data = [{"group":"groupa","status":"active"},{"group":"groupb","status":"inactive"}] # 提取所有group字段生成列表 json_group = [item["group"] for item in raw_data] # 匹配比对示例 target_group = "groupc" if target_group in json_group: # 匹配成功后的业务逻辑 pass
类PL/SQL存储过程实现(适配你提供的伪代码语法场景)
DECLARE -- 自定义存储group值的数组类型 TYPE group_arr IS TABLE OF VARCHAR2(100) INDEX BY BINARY_INTEGER; jsonGroup group_arr; target_group VARCHAR2(100) := 'groupc'; BEGIN -- 遍历原始JSON数组,提取group存入jsonGroup FOR i IN 0..raw_json_array.COUNT - 1 LOOP jsonGroup(i) := raw_json_array(i).get_string('group'); END LOOP; -- 遍历比对逻辑 FOR i IN 0..jsonGroup.COUNT -1 LOOP IF jsonGroup(i) = target_group THEN -- 匹配成功后的业务逻辑 NULL; END IF; END LOOP; END; /
内容的提问来源于stack exchange,提问作者Kyujiin
相关产品推荐
相关产品推荐

