generate_subscripts()

生成数组下标的函数

generate_subscripts() 是一个系统函数,用于生成一系列整数,表示指定 数组 的下标。

generate_subscripts() 添加于 PostgreSQL 8.4

用法

generate_subscripts ( array anyarray, dim integer ) → setof integer
generate_subscripts ( array anyarray, dim integer, reverse boolean ) → setof integer

变更历史

示例

generate_subscripts() 的基本用法示例

postgres=# SELECT generate_subscripts(ARRAY['foo','bar','baz'], 1);
 generate_subscripts
---------------------
                   1
                   2
                   3
(3 rows)

下标可以按反向顺序返回

postgres=# SELECT generate_subscripts(ARRAY['foo','bar','baz'], 1, TRUE);
 generate_subscripts
---------------------
                   3
                   2
                   1
(3 rows)

为多维数组生成下标

postgres=# SELECT generate_subscripts(ARRAY[​['foo','bar','baz'],['boo','bom','bop']​], 1);
 generate_subscripts
---------------------
                   1
                   2
(2 rows)

如果指定了无效的数组维度,则不返回任何值

postgres=# SELECT generate_subscripts(ARRAY['foo','bar','baz'], 2);
 generate_subscripts
---------------------
(0 rows)

分类

数组, 系统函数

另请参阅

generate_series()

反馈

提交任何关于“generate_subscripts()”的评论、建议或更正请点击 这里