2013-10-01 128 views
1

我有一個varchar2字段,並且想要將它分割爲字符數組 Like'ABCDEF' - >'A''B''C''D''E' 我將我的字段值轉換爲字符數組?將Varchar2轉換爲Oracle中的Char數組

+0

像這樣的東西http://stackoverflow.com/questions/14328621/oracle-10g-splitting-string-into-multiple-rows? –

回答

2

如果你實際上意味着字符的PL/SQL集合,你可以不喜歡

SQL> ed 
Wrote file afiedt.buf 

    1 declare 
    2 type char_arr is table of char(1) index by pls_integer; 
    3 l_str varchar2(100) := 'ABCDEF'; 
    4 l_arr char_arr; 
    5 begin 
    6 for i in 1 .. length(l_str) 
    7 loop 
    8  l_arr(i) := substr(l_str, i, 1); 
    9 end loop; 
10 dbms_output.put_line(l_arr.count); 
11* end; 
SQL>/
6 

PL/SQL procedure successfully completed. 

不理解業務需求,不過,我會傾向於是非常可疑的。當您發現自己在PL/SQL中拆分字符串時,幾乎總是意味着您已經以非原子形式存儲數據,並且需要解決數據模型問題。