【发布时间】:2021-06-16 00:05:20
【问题描述】:
我想在 PL/pgSQL 中创建二维数组。
我找到了这样的例子: myarray1 INT[2][2]:=array[[NULL,NULL],[NULL,NULL]];
但在我的情况下,我在创建表时不知道表的数组,因为数据是从选择查询中读取的。如何声明动态数组?
我换个方式问。 在 Oracle 中我可以声明:
CREATE OR REPLACE TYPE MY_TYPE AS OBJECT
(
var1 VARCHAR(20),
...
)
...
这是对应RECORD的是plpsql。
然后在 Oracle 中我可以声明
CREATE OR REPLACE TYPE MY_TYPE_MY_TYPES IS
table of MY_TYPE;
所以我可以将我的选择查询结果存储在只是二维表的类型中。而且我不必知道选择查询返回的行数。
我如何在 plpsql 中完成这个?
谢谢
【问题讨论】:
标签: sql postgresql multidimensional-array