Skip to content

PostgreSQL array_upper() 函数 ​

PostgreSQL array_upper() 函数返回指定的数组中指定维度的最大索引。

array_upper() 语法 ​

这里是 PostgreSQL array_upper() 函数的语法:

sql
array_upper(array, dimension) -> integer

参数 ​

  • array

    必需的。 数组。

  • dimension

    必需的。 数组的维度,它是一个整数。

返回值 ​

PostgreSQL array_upper() 函数返回一个整数,它是指定的数组中指定维度的最大索引。

如果您指定了一个数组中不存在的维度,该函数将返回 NULL。

array_upper() 示例 ​

一维数组 ​

本示例展示了如何使用 PostgreSQL array_upper() 函数返回一维数组的最大索引。

sql
SELECT array_upper(ARRAY[0, 1, 2], 1);
bash
 array_upper
-------------
           3

这说明,数组 [0, 1, 2] 的最大索引是 3。

sql
SELECT array_upper('[3:7]={1,1,1,1,1}'::integer[], 1);
bash
 array_upper
-------------
           7

这说明,数组的 [3:7]={1,1,1,1,1} 最大索引是 7。

多维数组 ​

对于一个多维数组,您可以获取某个数组维度的最大索引。比如:

sql
SELECT array_upper('[2:4][2:3]={{1,1},{1,1},{1,1}}'::integer[], 2);
bash
 array_upper
-------------
           3

这说明,数组 [2:4][2:3]={{1,1},{1,1},{1,1}} 的第二维的最大索引是 3。