create or replace
procedure q_use_party_num as
v_num number;--未使用总人数
--无参游标
cursor dangweis is select org_id,org_name from t_organization_structure where org_type_id='03' and del_flag='0';
--带参数游标
cursor cur_org(cur_org_id varchar2) is select org_id,org_name from t_organization_structure where org_type_id='01' and del_flag='0' start with org_id = cur_org_id connect by porg_id = prior org_id;
--带参数游标
cursor cur_members(cur_org_id varchar2) is select t.member_id,t.party_total,p.name from t_statistic_partytemp t,t_member_base p where t.member_id=p.member_id and t.org_id=cur_org_id and t.year='2018' and t.quart='02' and t.party_total='0.00';
begin
dbms_output.enable(buffer_size => null);
-- 遍历本区域的所有党委
for dangwei in dangweis loop
begin
v_num:=0;
-- 获取本党委下的所有党员
sys.dbms_output.put_line('=========================='||'党委名称='||dangwei.org_name||' 在2018年2月份 未使用智慧党务APP的统计情况如下:===============================:');
--参数游标传入
for org in cur_org(dangwei.org_id) loop
begin
-- sys.dbms_output.put_line('支部名称='||org.org_name||' 支部org_id='||org.org_id);
-- 针对每一个支部查询党员使用APP情况
--参数游标传入
for member in cur_members(org.org_id) loop
begin
v_num:=v_num+1;
--sys.dbms_output.put_line(dangwei.org_name||'下的'||org.org_name||'下的党员名字='||member.name||'未使用过APP');
end;
end loop;
end;
end loop;
sys.dbms_output.put_line('党委名称='||dangwei.org_name||' 未使用APP总人数为'||v_num);
end;
end loop;
END Q_USE_PARTY_NUM;
带参数游标的存储过程
最新推荐文章于 2023-11-18 08:00:00 发布