我正在使用plpython3u
处理一个结果,该结果包含任意数量的列,每列保存一个数组(长度> 0)。在python中,我期望将这些数据作为多维数组处理,但是我很难将其从Postgres导入到函数中。
我正在使用的函数声明如下:
CREATE OR REPLACE FUNCTION is_set_cover_possible(VARIADIC args numeric[][])
问题是,当我尝试
SELECT is_set_cover_possible(ARRAY[1,2],ARRAY[1,2]);
我得到:
没有函数匹配给定的名称和参数类型。您可能需要添加显式类型转换。
如果我传入(ARRAY[1,2])
,该函数将返回结果而不会失败,因此postgres似乎无法处理上面的多维声明。
因此,如果实际上可行:我如何声明该函数以接收数组的 list ?
答案 0 :(得分:1)
您不能这样做。用作可变参数的参数不能为数组。
在技术上不可能实现可变参数论证。现在有可能,但没有人实现。