/**
* 判断str1是否包含str2.
* @param str1 数组型字符串,以逗号分割
* @param str2
* @return 如果str1包含str2,则返回1,否则返回-1
* @Author: xDer
*/
create or replace function exinstr(str1 in varchar2, str2 in varchar2)
return integer as
Result integer;
v_column_value varchar2(4000);
cursor cur is
select column_value from table(fn_split(str1,','));
c_row cur%rowtype;
begin
open cur;
loop
fetch cur into c_row;
exit when cur%notfound;
v_column_value := c_row.column_value;
if v_column_value = str2 then
Result := 1;
return(Result);
exit;
else
continue;
end if;
end loop;
close cur;
Result :=-1;
return(Result);
exception when others then
begin
Result := -1;
return(Result);
end;
end exinstr;