在工作中要对非常复杂的excel进行解析,文件内容为一个矩阵表格,对行和列都要进行转换,须要得到动态表格的列名称,根据每次上传的数据内容,每次上传的数据格式可能都不一样
根据列名序号,列名名称和列名的值进行业务逻辑的处理。
declare
v_key varchar(100);
v_value varchar(100);
v_record record;
v_data1 record;
hs_row record;
begin
--得到列号的序号
for v_data1 in ( select excel_column_a ,excel_column_b ,excel_column_c from upload_file_matrix ) loop
FOR hs_row IN SELECT kv."key", kv."value" FROM each(hstore(v_data1)) kv
loop
v_key = hs_row."key";
v_value = hs_row."value";
raise notice ' key :%', v_key;
raise notice ' value :%', v_value;
END LOOP;
end loop;
end ;