我需要联合来自不同查询的表,并从存储过程返回整个结果集。这就是我的意思:
CREATE OR REPLACE FUNCTION invalid_pa() RETURNS TABLE (p_id int) AS $$
DECLARE
pl int[] := ARRAY(SELECT id FROM p.pl);
BEGIN
FOR i IN 1 .. array_upper(platforms, 1)
LOOP
--The query is SELECT id FROM dblink(connection_str(i), 'Some query')
--I need to union all the query above
--and return the unioned table
END LOOP;
END $$
LANGUAGE plpgsql;
我该如何以这样的方式合并不同的结果集?
这里的connection_str(i)
是一个返回实际连接字符串的存储过程。