create or replace procedure prc_rs_gzndbb( p_table in varchar2) is /*=================================================================================================== 名称:prc_rs_gzndbb(procedure) 参数:传入:p_table varchar2 调用:prc_yd_shtztjyh 返回: 功能:统计员工工资发放年度报表 返回:把统计结果插入p_table表中 作者: 编写时间:2005-2-21 修改人: 修改内容: 修改时间: =====================================================================================================*/ v_lmmc varchar2(20);--栏目名称 v_sql varchar2(1000); --定义取工资栏目的游标 cursor cur_lmmc is select distinct lmmc from tmp_gztjlsb; begin --定义动态sql v_sql:='select rydm,xm'; --遍历工资栏目并拼写成插入的sql for cur_lmmc_rec in cur_lmmc loop v_lmmc:=cur_lmmc_rec.lmmc; v_sql:=v_sql||','||'sum(decode(lmmc'||','''||v_lmmc||''',je))'||' '||v_lmmc; end loop; v_sql:=v_sql||' from tmp_gztjlsb group by rydm,xm'; execute immediate 'insert into '||p_table||' '||v_sql; commit; end prc_rs_gzndbb;