我使用EXECUTE(動態SQL)和SETOF(結果返回的列表),但它是錯誤的:(Postgres的動態SQL和列表結果
create table test as
select 1 id, 'safd' data1,'sagd' data2
union
select 2 id, 'hdfg' data1,'sdsf' data2;
create or replace function test2(a varchar) returns SETOF record as
$BODY$
declare x record;
begin
for x in execute a loop
RETURN NEXT x;
end loop;
return;
end;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
select * from test2('select * from test');
錯誤:返回「記錄」的函數需要列定義列表 第1行:select * from test2('select * from test'); ^ ********** **********錯誤 錯誤:需要一個字段定義列表返回 「記錄」 SQL國家職能:42601 字符:15 – Virus 2013-05-09 01:24:11