CREATE OR REPLACE FUNCTION F_HPS_SPLIT
/*
* 功 能: split.
* 输入参数: Liststr string
* 输入参数: Sepe index
* 输入参数: Sepe separator. default is ','.
* return sepeCount
*/
(
Liststr in varchar2,
inde in number,
Sepe in varchar2 := ','
) return varchar2 is
-- 去掉前后分隔符后的字符串
Str varchar2(4000);
-- 要返回的字符串
retStr varchar2(100);
-- 分隔符个数
sepeCount number(4);
begin
-- 去掉前后的分隔符;
Str := TRIM(BOTH Sepe from Liststr);
sepeCount := f_hps_getsepcount(Liststr, Sepe);
IF sepeCount = 0 THEN
return Liststr;
END IF;
IF inde > sepeCount THEN
retStr := '0';
ELSIF inde = sepeCount THEN
retStr := Substr(str, Instr(str, Sepe, 1, inde) + 1, length(Str));
ELSIF inde = 0 THEN
retStr := Substr(str, 1, Instr(str, Sepe, 1, 1) - 1);
ELSE
str := SubStr(Str, Instr(str, Sepe, 1, inde) + 1, length(str));
retStr := Substr(str, 1, Instr(str, Sepe, 1, 1) - 1);
END IF;
return retStr;
end;
商业和数据库很多时候必须跨时区工作,从9i开始,oracle环境开始有了时区意识,通过指定数据库的时区和使用TIMESTAMP WITH TIME ZONE和TIMESTAMP WITH LOCAL TIME ZONE数据类型来实现该功能。
TIMESTAMP WITH TIME ZONE不会存储数据库时区,但是有一个指示用来说明该时间所使用的时区。TIMESTAMP WITH LOCAL TIME ZONE会同 ......