1818IP-服务器技术教程,云服务器评测推荐,服务器系统排错处理,环境搭建,攻击防护等

当前位置:首页 - 数据库 - 正文

君子好学,自强不息!

如果你对Oracle创建Split 和Map 函数感到很是很郁闷时。你就可以浏览下面的文章了,我在一个信誉度很好的网站找到一个关于Oracle创建Split 和Map 函数的相关代码的介绍,以下文章主要是对其代码的介绍。供大家分享。

在Oracle创建Split 和Map 函数

createorreplaceTYPET_VARCHAR2_LISTASTABLEOFVARCHAR2(200); 
/ 
createorreplace 
FUNCTIONF_SPLIT_STRING( 
p_sourceVARCHAR2,p_delimiterVARCHAR2 
)RETURNT_VARCHAR2_LIST 
AS 
v_layer_rate_listT_VARCHAR2_LIST:=T_VARCHAR2_LIST(); 
var_tmpVARCHAR2(4000); 
var_elementVARCHAR2(4000); 
BEGIN 
var_tmp:=p_source; 
WHILEinstr(var_tmp,p_delimiter)>0LOOP 
var_element:=substr(var_tmp,1,instr(var_tmp,p_delimiter)-1); 
var_tmp:=substr(var_tmp,instr(var_tmp,p_delimiter)+
length(p_delimiter),length(var_tmp)); 
IF(var_elementISNOTNULL)AND(var_element!=p_delimiter)THEN 
v_layer_rate_list.extend(1); 
v_layer_rate_list(v_layer_rate_list.count):=var_element; 
ENDIF; 
ENDLOOP; 
IF(var_tmpISNOTNULL)AND(var_tmp!=p_delimiter)THEN 
v_layer_rate_list.extend(1); 
v_layer_rate_list(v_layer_rate_list.count):=var_tmp; 
ENDIF; 
RETURNv_layer_rate_list; 
ENDF_SPLIT_STRING; 
/ 
createorreplace 
TYPET_STRING_MAPASTABLEOFT_STRING_ENTRY; 
/ 
createorreplace 
TYPET_STRING_ENTRYASOBJECT( 
c_keyVARCHAR2(200),c_valueVARCHAR2(200) 
); 
/ 
createorreplace 
FUNCTIONf_PARSE_STRING_TO_MAP( 
p_oringal_stringVARCHAR2,p_entry_delimiterVARCHAR2,
p_key_delimeterVARCHAR2 
)RETURNT_STRING_MAP 
AS 
v_entry_listT_VARCHAR2_LIST; 
v_string_mapT_STRING_MAP:=T_STRING_MAP(); 
v_string_entryT_STRING_ENTRY:=T_STRING_ENTRY(NULL,NULL); 
v_intNUMBER(4); 
BEGIN 
v_entry_list:=F_SPLIT_STRING(p_oringal_string,p_entry_delimiter); 
FORl_entryINv_entry_list.first..v_entry_list.last 
LOOP 
v_int:=instr(v_entry_list(l_entry),p_key_delimeter); 
v_string_entry.c_key:=substr(v_entry_list(l_entry),0,v_int-1); 
v_string_entry.c_value:=substr(v_entry_list(l_entry),
v_int+length(p_key_delimeter)); 
v_string_map.extend; 
v_string_map(v_string_map.count):=v_string_entry; 
ENDLOOP; 
RETURNv_string_map; 
ENDf_PARSE_STRING_TO_MAP; 
/ 

本文来源:1818IP

本文地址:https://www.1818ip.com/post/11779.html

免责声明:本文由用户上传,如有侵权请联系删除!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。