1.集合方法的介绍
集合方法是 PL/SQL 子程序,既可以是一个返回集合信息的函数,也可以是一个对集合进行操作的过程。集合方法使集合更易于使用,更易于维护。常用的集合方法如下所示:
- 存储过程
| DELETE | 从集合删除元素 |
| TRIM | 从可变数组或嵌套表末尾删除元素 |
| EXTEND | 向可变数组或嵌套表末尾添加元素 |
- 函数
| EXISTS | 判断可变数组和嵌套表中是否存在指定元素 |
| FIRST | 返回集合的第一个索引 |
| LAST | 返回集合的最后一个索引 |
| COUNT | 返回集合的元素数量 |
| LIMIT | 返回集合的包含的最大元素数量 |
| PRIOR(i) | 返回指定索引i前的索引 |
| NEXT(i) | 返回指定索引i的下一个索引 |
2.集合方法的使用方法
集合方法的调用语法为:集合变量名.集合方法。使用方法如下示例所示:
\set SQLTERM /
DECLARE
TYPE v1 IS VARRAY(10) OF INT;
Vv1 v1 := v1(1,3,5,6,9);
BEGIN
Vv1.DELETE(1) --删除第一个元素,注意关联数组中不可用。
Vv1.DELETE(2,3)--删除第2到3个元素,注意关联数组中不可用。
Vv1.DELETE--删除所有元素
Vv1 v1 := v1(1,3,5,6,9);
Vv1.TRIM--移除末尾1个元素
Vv1.TRIM(2)--移除末尾2个元素
Vv1.EXTEND--向集合末尾增加1个null元素
Vv1.EXTEND(2)--向集合末尾增加2个null元素
Vv1.EXTEND(2,1)--向集合末尾增加2个索引为1的元素
Vv1.EXISTS(1) --判断第一个元素是否存在
Vv1.FIRST --返回第一个索引
Vv1.LAST--返回最后一个索引
Vv1.COUNT--返回集合的元素数量
Vv1.LIMIT--返回集合可以拥有的最大元素个数,无最大元素数则返回null
Vv1.PRIOR(1)--返回第一个索引前的索引,若前无索引,则返回null
Vv1.NEXT(3)--返回第三个索引后的索引,若后无索引,则返回null
--对于可变数组,指定索引大于最大元素数时,返回Vv1.LAST的索引
Vv1.PRIOR(999) --返回Vv1.LAST
END;
/
3.总结
本文介绍了PL/SQL中常见得集合方法及其使用方法。通过学习使用集合方法,可以更加方便的操作集合中的元素,以应对不同的的需求任务。 更多信息,参见help.kingbase.com.cn/v8/index.ht…