oracle 把逗号分隔符,将逗号分隔为Oracle中的列
如果您只有一行,并且有時間創(chuàng)建創(chuàng)建您自己的內(nèi)置,然后你可以使用
PIVOT + LISTAGG這樣做如下:select?*?from?(
select?rownum?r?,?collection.*
from?TABLE(cto_table(',','1.25,?3.87,?2,?19,,?1,?9,?'))?collection)PIVOT?(
LISTAGG(column_value)?within?group?(order?by?1)?as?val
for?r?in?(1,?2,?3,?4,?5,?6,?7,?8,?9,?10))
FYI:下面是如何創(chuàng)建cto_table職能:CREATE?OR?REPLACE?TYPE?t_my_list?AS?TABLE?OF?VARCHAR2(100);CREATE?OR?REPLACEFUNCTION?cto_table(p_sep?in?Varchar2,?p_list?IN?VARCHAR2)
RETURN?t_my_listAS
l_string?VARCHAR2(32767)?:=?p_list?||?p_sep;
l_sep_index?PLS_INTEGER;
l_index?PLS_INTEGER?:=?1;
l_tab?t_my_list?????:=?t_my_list();BEGIN
LOOP
l_sep_index?:=?INSTR(l_string,?p_sep,?l_index);
EXIT
WHEN?l_sep_index?=?0;
l_tab.EXTEND;
l_tab(l_tab.COUNT)?:=?TRIM(SUBSTR(l_string,l_index,l_sep_index?-?l_index));
l_index????????????:=?l_sep_index?+?1;
END?LOOP;
RETURN?l_tab;END?cto_table;/
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的oracle 把逗号分隔符,将逗号分隔为Oracle中的列的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle查表文件大小,Oracle表
- 下一篇: oracle带输出参数存储,oracle