oracle table类型遍历,oracle index-by table的遍历 | 学步园

Oracle的数据集合类型,分三种:

Varray:固定长度(其他方法可扩展),连续的数组。对应其他程序中的数组。

Nested table:长度不固定,不连续。对应其他程序中的set,list等。

Associative Arrays(Known as index-by table):有索引的集合。对应其他程序中的hashMap。

前面的两种集合类型,遍历都比较简单,有很多种方法来遍历。最后一种,比较困惑人,看pl/sql的参考文档,更困惑人。问了几个同事,也都表示不知道。最后,摸索出来了,记在这里,备忘,也希望帮助更多人.....

declare

type tab_result is table of varchar2(20) index by varchar2(20);

vt_result tab_result;

which varchar2(20);

begin

vt_result('a'):='asd';

vt_result('u'):='lkj';

vt_result('e'):='hgj';

vt_result('i'):='uey';

--如何遍历?

which:=vt_result.first;

loop

dbms_output.put_line(which||'--->');

dbms_output.put_line(vt_result(which));

which:=vt_result.next(which);

exit when which is null;

end loop;

end;

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值