postgresql中多维数组的不同处理方法

postgresql中多维数组的不同处理方法,postgresql,multidimensional-array,Postgresql,Multidimensional Array,我正在处理一个与此类似的问题: 在此问题中,用户希望能够创建多维数组,如: {{1,2},{3}} 使用类似于: SELECT array_cat( ARRAY[ARRAY[1,2]] , ARRAY[ARRAY[3]] ) Erwin Brandsetter说,如果没有像填充虚拟值这样的廉价技巧,这是不可能的 我想知道我是否可以用另一种方法来构造多维数组。 或者一些基本相同的等效结构。 比如构造一些数据类型来替换int[]结构。或者可能使用post

我正在处理一个与此类似的问题:

在此问题中,用户希望能够创建多维数组,如:

{{1,2},{3}}
使用类似于:

SELECT array_cat(
           ARRAY[ARRAY[1,2]]
         , ARRAY[ARRAY[3]]
)
Erwin Brandsetter说,如果没有像填充虚拟值这样的廉价技巧,这是不可能的

我想知道我是否可以用另一种方法来构造多维数组。 或者一些基本相同的等效结构。 比如构造一些数据类型来替换int[]结构。或者可能使用postgres json特性


我希望解决方案能够方便地添加/更换。到目前为止,多维数组操作在postgresql中并不有趣。

简单响应-postgresql没有数组类型的数组。它不是基于动态类型(集合)的系统。可能用户走错了路,没有尽头。没有任何简单的解决办法。也许你应该使用不同的应用程序,或者你应该改变你的想法,使之更加关系化

可能jsonb是唯一一种可能的解决方案,可以解决具有不同维数数组的多维数组。

谢谢。我确实决定走jsonb之路,这似乎是可能的,但我放弃了,并用python/psychopg2编写了我想做的事情。