时间:2021-07-01 10:21:17 帮助过:30人阅读
将字符数组,转化成CSV的格式 PL/SQL CSV type t_str_array as table of varchar2(4000);function array_to_csv (p_values in t_str_array, p_separator in varchar2 := g_default_separator) return varchar2as l_value varchar2(32000); l_returnvalue varc
将字符数组,转化成CSV的格式 PL/SQL CSVtype t_str_array as table of varchar2(4000); function array_to_csv (p_values in t_str_array, p_separator in varchar2 := g_default_separator) return varchar2 as l_value varchar2(32000); l_returnvalue varchar2(32000); begin /* Purpose: convert array of values to CSV Remarks: Who Date Description ------ ---------- -------------------------------- MBR 31.03.2010 Created fartpig 07.03.2011 noted */ --遍历值 数组 for i in p_values.first .. p_values.last loop l_value := p_values(i); --如果其中包含了 分割符号, if instr(l_value, p_separator) > 0 then --使用 双引号 将其包括起来 l_value := '"' || l_value || '"'; end if; --如果 是第一次 赋值 if l_returnvalue is null then --直接 赋值 l_returnvalue := l_value; else --使用 分隔符, 进行相应的 值的分割 l_returnvalue := l_returnvalue || p_separator || l_value; end if; end loop; return l_returnvalue; end array_to_csv;