- 论坛徽章:
- 0
|
一个字段data的值是字符串,如:aaa,bbb,ccc,ddd,eee,
我要取第N个“,”号与第N-1的“,”之间的字符串。
请问怎么在oracle实现这个function??????
下面的我写的,老是有错,请各位高手,帮我改一下。谢谢!!
create or replace FUNCTION get(ID IN CHAR , N in integer , md in char )
RETURN char AS
rc char; i integer;str char;s char;
BEGIN
str:='';
s:='';
open rc for
select prj_data1||',' data
from pmsdocument
where (id_prj=id) and (module=md);
str:=rc ;
if str<>;'' then
begin
for i in 2..N
loop
str:=substr(str,INSTR (str, ',') + 1);
end loop;
end if ;
s:=substr(str,1,INSTR (str, ',') - 1);;
RETURN s ;
END; |
|