oracle pl/sql 函数中链表的使用

定义:

 type t_numberstab is table of number;

举例:

create or replace function getbldroomidforcert(p_certid number,p_sequence number) return varchar2
is
 type t_numberstab is table of number;
 v_bldroomids t_numberstab:=t_numberstab();
 v_cnt          number:=1;
begin
 for brrs in (select bldroomid,(select buildno from building where buildid=bldroom.buildid) buildno,getbrfloors(bldroomid) flooron,getbldroompart(bldroomid) part from bldroom where bldroomid in (select bldroomid from rightcertroom where certid=p_certid and exists (select 1 from rightcert where certid=p_certid and activeid=createactiveid)) order by buildno,flooron,part)
 loop
  v_bldroomids.extend;
  v_bldroomids(v_cnt):=brrs.bldroomid;
  v_cnt:=v_cnt+1;
 end loop;
 if v_bldroomids.exists(p_sequence) then
  return v_bldroomids(p_sequence);
 else
  return -1;
 end if;
end getbldroomidforcert;
/
show err;

转载于:https://www.cnblogs.com/BradMiller/archive/2010/05/25/1743976.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值