本函式可以將「目標字串」以「指定字串」進行拆分,並通過表結構返回結果。**如下:
create or replace type建立完畢後,我們來測試一下,例如執行如下sql:str_split
is table of varchar2
(4000
);create or replace function
splitstr(p_string
in varchar2
, p_delimiter
in varchar2
)
return
str_split
pipelined
as
v_length
number
:= length(p_string);
v_start
number
:= 1
; v_index
number
;begin
while
(v_start <= v_length)
loop
v_index := instr(p_string, p_delimiter, v_start);
if v_index =
0
then
pipe row
(substr(p_string, v_start));
v_start := v_length + 1;
else
pipe row
(substr(p_string, v_start, v_index - v_start));
v_start := v_index + 1;
end if
;
end loop
;
return
;end
splitstr;
select其輸出結果為乙個兩行的表,如下圖:* from table
(splitstr(
'hello,cnblogs!'
,','
));
將行轉為列顯示:
select如圖:a.column_value v1,b.column_value v2
from
(select
* from
(select rownum
rn,t.*
from table
(splitstr(
'hello,cnblogs!'
,','
)) t)) a,
(select
* from
(select rownum
rn,t.*
from table
(splitstr(
'hello,cnblogs!'
,','
)) t)) b
where
a.rn=
1 and
b.rn=
2
本函式可以將「目標字串」以「指定字串」進行拆分,並通過表結構返回結果。**如下:
create or replace type建立完畢後,我們來測試一下,例如執行如下sql:str_split
is table of varchar2
(4000
);create or replace function
splitstr(p_string
in varchar2
, p_delimiter
in varchar2
)
return
str_split
pipelined
as
v_length
number
:= length(p_string);
v_start
number
:= 1
; v_index
number
;begin
while
(v_start <= v_length)
loop
v_index := instr(p_string, p_delimiter, v_start);
if v_index =
0
then
pipe row
(substr(p_string, v_start));
v_start := v_length + 1;
else
pipe row
(substr(p_string, v_start, v_index - v_start));
v_start := v_index + 1;
end if
;
end loop
;
return
;end
splitstr;
select其輸出結果為乙個兩行的表,如下圖:* from table
(splitstr(
'hello,cnblogs!'
,','
));
將行轉為列顯示:
select如圖:a.column_value v1,b.column_value v2
from
(select
* from
(select rownum
rn,t.*
from table
(splitstr(
'hello,cnblogs!'
,','
)) t)) a,
(select
* from
(select rownum
rn,t.*
from table
(splitstr(
'hello,cnblogs!'
,','
)) t)) b
where
a.rn=
1 and
b.rn=
2
拆分字串
拆分乙個字串,獲取每一組的key與value。如字串 qq adf f qewr98 eer d9adf t ad34 f qewrqr u adf43 gggg 2344 按照物件導向理念來解決,建立乙個物件 這個是對物件物件,有key和value兩個特性。我們需要把拆分好的資料臨時儲存起來,現在...
拆分字串
拆分乙個字串,獲取每一組的key與value。如字串 qq adf f qewr98 eer d9adf t ad34 f qewrqr u adf43 gggg 2344 按照物件導向理念來解決,建立乙個物件 這個是對物件物件,有key和value兩個特性。我們需要把拆分好的資料臨時儲存起來,現在...
根據標點拆分字串 Excel 字串拆分
用 excel 處理資料時,有時需要對字串進行拆分。對於比較簡單的拆分,使用 excel 函式可以順利完成,但碰到一些特殊需求,或者拆分的規則比較複雜時,則很難用 excel 實現了。這裡列出一些拆分需求示例,分析拆分難點,並提供 spl 解決 spl 是專業計算引擎 esproc 使用的語言,用於...