使用Oracle PL / SQL For循环迭代逗号分隔的字符串

需求:有一个逗号分隔的字符串,求其所有数字的和。 

--循环遍历逗号分隔的字符串
  DECLARE str VARCHAR2(100) := '10,20,30';
          v_sum number :=0;
  
    BEGIN
      FOR arr IN
      (SELECT trim(regexp_substr(str,'[^,]+',1,LEVEL)) item
      FROM dual
        CONNECT BY LEVEL <= regexp_count(str,',')+1
      )
      LOOP
       dbms_output.put_line(arr.item);
       v_sum := v_sum + arr.item;
     END LOOP;
     dbms_output.put_line(v_sum);
   END;
发布了163 篇原创文章 · 获赞 46 · 访问量 17万+

猜你喜欢

转载自blog.csdn.net/liangmengbk/article/details/100973955