我想在函数内创建二维数组并用 select 语句中的值填充它。我尝试这段代码并最终得到一维数组。我究竟做错了什么?
select array(select a from t a)
=====================================
"{"(1,stxt,varchar)","(2,sint,int)"}"
create or replace function __test(
) returns text
language 'plpgsql' as
$$
declare
_dat varchar[][];
begin
_dat = (select array(select a from t a));
return array_dims(_dat);
end;
$$;
select __test();
===========
"[1:2]"
我希望最后一个命令为两行三列返回 [1:2][1:3]。