自己写了一个Oracle FUNCTION, 用来将Excel中的SUM坐标全部展开
调用方式:
select Excel_Sum_to_individual_cols('sum(D1:D3,D5,C5,D12:D15,D6)') from dual;
CREATE OR REPLACE FUNCTION Excel_Sum_to_individual_cols(p_sum_input VARCHAR2) RETURN VARCHAR2 IS
/**
支持:
输入同行跨列如 SUM(AA26:AC26)
输出 (AA26+AB26+AC26)
或者:
输入列同跨行如 SUM(AA21:AA24)
输出 (AA21+AA22+AA23+AA24)
或者:
输入 sum(D1:D3,D5,C5,D12:D15,D6)
输出 (D1+D2+D3+D5+C5+D12+D13+D14+D15+D6)
Author: CCQ
*/
PARAM_INPUT VARCHAR2(500);
rtnStr VARCHAR2(1000); --返回值
str_1 VARCHAR2(10); -- 如 AA26
str_2 VARCHAR2(10); -- 如 AC26
str_1_head VARCHAR2(10); -- 如AA
str_1_tail number; -- 如 26
str_2_head VARCHAR2(10); -- 如 AC
str_2_tail number; -- 如 26
gap number;
new_enchar VARCHAR2(10);
BEGIN
--先把sum和括号去掉
se