怎样在oracle创建Split和Map函数?
怎样在oracle创建Split和Map函数?
create or replace TYPE T_VARCHAR2_LIST AS TABLE OF VARCHAR2(200); / create or replace FUNCTION F_SPLIT_STRING( p_source VARCHAR2, p_delimiter VARCHAR2 ) RETURN T_VARCHAR2_LIST AS v_layer_rate_list T_VARCHAR2_LIST := T_VARCHAR2_LIST(); var_tmp VARCHAR2(4000); var_element VARCHAR2(4000); BEGIN var_tmp := p_source; WHILE instr(var_tmp, p_delimiter)>0 LOOP 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_element IS NOT NULL) AND (var_element != p_delimiter) THEN v_layer_rate_list。
extend(1); v_layer_rate_list(v_layer_rate_list。count) := var_element; END IF; END LOOP; IF (var_tmp IS NOT NULL) AND (var_tmp != p_delimiter) THEN v_layer_rate_list。
extend(1); v_layer_rate_list(v_layer_rate_list。count) := var_tmp; END IF; RETURN v_layer_rate_list; END F_SPLIT_STRING; / create or replace TYPE T_STRING_MAP AS TABLE OF T_STRING_ENTRY; / create or replace TYPE T_STRING_ENTRY AS OBJECT ( c_key VARCHAR2(200), c_value VARCHAR2(200) ); / create or replace FUNCTION f_PARSE_STRING_TO_MAP( p_oringal_string VARCHAR2, p_entry_delimiter VARCHAR2, p_key_delimeter VARCHAR2 ) RETURN T_STRING_MAP AS v_entry_list T_VARCHAR2_LIST; v_string_map T_STRING_MAP := T_STRING_MAP(); v_string_entry T_STRING_ENTRY := T_STRING_ENTRY(NULL,NULL); v_int NUMBER(4); BEGIN v_entry_list := F_SPLIT_STRING(p_oringal_string, p_entry_delimiter); FOR l_entry IN v_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; END LOOP; RETURN v_string_map; END f_PARSE_STRING_TO_MAP; / 以上是我对于这个问题的解答,希望能够帮到大家。
答:insert into table_name select max(id) + 1 ,$name,$age,$sex from table_name;详情>>
问:同事ip:10.101.107.28 我的IP:10.101.104.23我们在...
答:你们公司是WINDOWS域环境吗,如果是的话,你在网上邻居里应该能看到对方的主机。让她把文件夹共享出来就可以。 如果不是WINDOWS域,那得看你们是不是在一个...详情>>
问:数据结构顺序表的建立,可定义顺序表 #define maxnum elemtyp...
答:打开VC ,然后点击新建,出来界面之后选择Win32 Console Application并输入工程的名称和选择项目的位置,然后出现“一个空工程”,在点击“...详情>>