人大金仓数据库KingbaseES PLSQL中集合方法的基本使用介绍

62 阅读2分钟

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(21--向集合末尾增加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…