oracale解析json对象

create or replace function JsonParam (v_param varchar2,v_key varchar2)
return varchar2
is
       temp varchar2(50);
       i number(2);
       jsonkey varchar2(50);
       jsonvalue varchar2(50);
       json varchar2(1000);
      
begin
       if v_param is not null then
            json:=replace(v_param,'{','') ;
             json:=replace(json,'}','') ;
               json:=replace(json,'"','') ;
             for temprow in(select strvalue as Value from table(fn_split(json,','))) loop
                if temprow.value is not null then
                i:=0;
                jsonkey:='';
                jsonvalue:='';
                for tem2  in(select strvalue as Value from table(fn_split(temprow.value,':'))) loop
                     if  i=0 then
                      jsonkey:=tem2.value;
                     end if;
                     if i=1 then
                     jsonvalue:=tem2.value;
                    
                     end if;
                     i:=i+1;
                end loop;
                if(jsonkey=v_key) then
                   temp:=jsonvalue;
                end if;
                end if;
             end loop;
       end if;
return temp;
      
end JsonParam;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值