动态行转列的代码 编译不过,大家帮帮我啊,着急!
DECLARE
str varchar2(4000) := '';
begin
str := 'select id';
FOR v_day IN (SELECT DISTINCT to_char(PLAN_DATE,'yy-MM-dd') FROM tb) LOOP
str := str || ',sum(decode(to_char(PLAN_DATE,''yy-MM-dd''),' || v_day || ', REQ_QTY, 0)) ' || v_day;
END LOOP;
str := str || ' from tb group by id';
dbms_output.put_line(str);
end;
注:PLAN_DATE是日期型字段
编译时提示错误:调用'||'时参数个数或类型错误。