代码之家  ›  专栏  ›  技术社区  ›  Nick

不同维度的未测试数组

  •  0
  • Nick  · 技术社区  · 10 年前

    是否有函数或查询可以将不同维度的数组作为一个集合返回?例如,我希望返回值

    ARRAY[1]
    ARRAY[2,3]
    ARRAY[4,5,6]
    

    1
    2
    3
    4
    5
    6
    
    2 回复  |  直到 10 年前
        1
  •  4
  •   Community George Stocker    7 年前

    使用 unnest() :

    SELECT unnest(arr) AS elem
    FROM (
     VALUES
       (ARRAY[1])
      ,(ARRAY[2,3])
      ,(ARRAY[4,5,6])
      ) t (arr);
    

    按要求返回。
    更多详情:

        2
  •  0
  •   Srinu Chinka    10 年前

    尝试以下查询

    select unnest(a) from
    (select array[1] as arr union select array[2,3]
    union select array[4,5,6]) t
    

    希望这可能有帮助:)。。