返回自定义游标的存储过程

create or replace procedure proc_xm_zjdw(
  xzqhid in varchar2,      --行政区划id
  queryYear in varchar2,    --查询年份
  resultzj out  FPJC_TYPE.MY_CURSOR  --输出的明细结果表
) is
   xzqh_length INTEGER := length(xzqhid);
begin
--资金到位监察
  open resultzj for
  select
  xzqhttt.xzqh_code as  xzqh_id,      --行政区划id
  xzqhttt.xzqh_name as xzqh_name,     --行政区划名称
  nvl(jjsqtj.xms,0) as xms,           --项目数量
  nvl(zjfpfa.xbtotal,0) as xbtotal    --下拨资金
 from t_fp_yw_xzqh xzqhttt
 left join
 (
  select xzqh.xzqh_id as id,count(par.xmsb_id) as xms
  from t_fp_yw_xzqh xzqh 
  join(
     select sb.xmsb_id,p.parentids from t_fp_yw_xzqh q
     join t_fp_yw_xmsb sb on sb.xzqh_id=q.xzqh_id
     join t_sys_xzqh_parents p on p.xzqh=q.xzqh_code
     where to_char(sb.sb_time,'yyyy')=queryYear
   ) par on instr(par.parentids,xzqh.xzqh_code)>0
  group by xzqh.xzqh_code,xzqh.xzqh_id
 )jjsqtj on jjsqtj.id=xzqhttt.xzqh_id
left join(
  select fa.xzqh_id1 as id,sum(fa.xb_total) as xbtotal
  from t_fp_zj_fpfa fa where fa.fp_year=queryYear
  group by fa.xzqh_id1
)zjfpfa
on zjfpfa.id=xzqhttt.xzqh_id
where xzqhttt.xzqh_code=xzqhid
or xzqhttt.first_id=xzqhid
order by xzqhttt.xzjb_id,xzqhttt.xzqh_number ;
end proc_xm_zjdw;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值