云数据库 GAUSSDB-数组:示例

时间:2024-01-23 20:09:19

示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
--演示在存储过程中对数组进行操作。
postgres=# CREATE OR REPLACE PROCEDURE array_proc
AS 
       TYPE ARRAY_INTEGER IS VARRAY(1024) OF INTEGER;--定义数组类型
       ARRINT ARRAY_INTEGER := ARRAY_INTEGER();  --声明数组类型的变量 
BEGIN 
       ARRINT.extend(10);  
       FOR I IN 1..10 LOOP  
               ARRINT(I) := I; 
       END LOOP; 
       DBE_OUTPUT.PRINT_LINE(ARRINT.COUNT);  
       DBE_OUTPUT.PRINT_LINE(ARRINT(1));  
       DBE_OUTPUT.PRINT_LINE(ARRINT(10)); 
       DBE_OUTPUT.PRINT_LINE(ARRINT(ARRINT.FIRST)); 
       DBE_OUTPUT.PRINT_LINE(ARRINT(ARRINT.last));
END;  
/

--调用该存储过程。
postgres=# CALL array_proc();

--删除存储过程。
postgres=# DROP PROCEDURE array_proc;
support.huaweicloud.com/devg-v1-gaussdb/gaussdb_devg_0659.html