TER*_*ytE 16 oracle plsql stored-procedures plsqldeveloper
我在PL/SQL脚本中有一个逗号分隔的字符串(例如data:='a,b,c,d,e'),我需要在脚本中解析.
我想遍历字符串并处理每个项目.就像一个'foreach'循环.
这可能在PL/SQL中吗?有人能指点我一些代码吗?
Ton*_*ews 14
如果您使用的是Oracle 10G或11G,那么您应该具有内置的Apex功能apex_util.string_to_table:
SQL> declare
2 v_array apex_application_global.vc_arr2;
3 v_string varchar2(2000);
4 begin
5
6 -- Convert delimited string to array
7 v_array := apex_util.string_to_table('alpha,beta,gamma,delta', ',');
8 for i in 1..v_array.count
9 loop
10 dbms_output.put_line(v_array(i));
11 end loop;
12
13 -- Convert array to delimited string
14 v_string := apex_util.table_to_string(v_array,'|');
15 dbms_output.put_line(v_string);
16 end;
17 /
alpha
beta
gamma
delta
alpha|beta|gamma|delta
PL/SQL procedure successfully completed.
Run Code Online (Sandbox Code Playgroud)