CREATE OR REPLACE FUNCTION result_num_type_test(strValue IN VARCHAR2)
RETURN RESULT_TBL IS
str1 varchar2(200);
str2 varchar2(200);
i number := 0;
j number := 0;
tb_o RESULT_TBL;
BEGIN
i := length(strValue);
IF i = 5 THEN
SELECT a.new_code_no, a.new_name_all
INTO str1, str2
FROM TEMP_NEW_CODE A
WHERE A.NEW_CODE_NO = strValue;
ELSIF i = 4 THEN
SELECT t.new_code_no, t.new_name_all
INTO str1, str2
FROM (SELECT a.new_code_no, a.new_name_all, ROWNUM rn
FROM TEMP_NEW_CODE A
WHERE A.New_Code_No like '%' || strValue || '%'
ORDER BY A.NEW_CODE_NO) t
WHERE t.rn = 2;
ELSE
SELECT a.new_code_no, a.new_name_all
into str1, str2
FROM TEMP_NEW_CODE A
WHERE A.NEW_CODE_NO = strValue;
END IF;
tb_o.EXTEND;
tb_o(tb_o.COUNT) := split_arr(cod >= str1, nam >= str2);
RETURN tb_o;
END result_num_type_test;