这是仅计算表中列的总和的简单代码。但是,每次更改时,列名都是动态的。为此,我尝试执行以下代码,但在函数中传递变量时它不起作用,但如果我传递硬编码值,那么它正在工作。
DECLARE
v_col varchar2(100);
v_sum varchar2(100);
begin
v_col:='"15-JAN-2012"';
dbms_output.put_line(v_col);
SELECT SUM(v_col) INTO v_sum from BAL_HISTORY;
dbms_output.put_line(v_sum);
end;
这是错误:ORA-01722:无效号码 ORA-06512:第 7 行