您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

返回数组的元素

数组元素的值可以通过索引 访问,其中 可以是从 1 到 2^31 -2 ([1-2147483646]) 的任意值。语法为:

: ‘[‘ ’]’;

例如,以下命令将数组 arr 的第二个元素的值复制到变量 var。由于数组元素的类型为 NVARCHAR(15) 因此变量 var 的类型必须相同:

DECLARE var NVARCHAR(15);

var = :arr[2];

请注意,如果从变量中读取,则必须在数组变量之前使用“:”。

除了将数组元素分配给标量变量外,还可以直接在 SQL 表达式中使用数组元素。例如,使用数组元素的值作为另一个数组的索引。

DO 

BEGIN

DECLARE arr TINYINT ARRAY = ARRAY(1,2,3);

DECLARE index_array INTEGER ARRAY = ARRAY(1,2);

DECLARE value TINYINT;

arr[:index_array[1]] = :arr[:index_array[2]];

value = :arr[:index_array[1]];

select :value from dummy;

END;