如何在PostgreSQL中创建具有范围的数组

时间:2019-04-09 05:03:51

标签: arrays postgresql

在PostgreSQL中,可以创建一个包含元素(https://www.postgresql.org/docs/current/functions-array.html)的数组:

SELECT ARRAY[1,2,3,4] AS indexes;

是否存在通过指定开始和结束来生成数组的函数?喜欢

SELECT array_from_to(1, 4) AS indexes

2 个答案:

答案 0 :(得分:2)

您可以将ARRAY_AGG函数与GENERATE_SERIES函数结合使用。

例如:

SELECT ARRAY_AGG(index) AS indexes
FROM GENERATE_SERIES(1,4) AS index;

输出:

  indexes  
-----------
 {1,2,3,4}

答案 1 :(得分:1)

例如,我们可以将ARRAY函数与generate_series结合使用

SELECT ARRAY(
    SELECT a.n
    FROM generate_series(1, 4) AS a(n)
);

Demo