从plpgsql函数返回多行

Die*_*rós 6 postgresql function plpgsql

我有以下功能:

CREATE OR REPLACE FUNCTION function1() RETURNS TABLE(foo1 VARCHAR, foo2 VARCHAR) AS $$
    BEGIN
    RETURN QUERY SELECT e.col1, e.col2 FROM my_table e;
    END;
$$ LANGUAGE plpgsql;
Run Code Online (Sandbox Code Playgroud)

它返回如下内容:

function1
record
|--------------|
(a,b)
(c,d)
Run Code Online (Sandbox Code Playgroud)

但我希望结果类似于这样的查询:

SELECT e.col1,e.col2 FROM my_table e;

  col1  col2
|-----|-----|
   a     b
   c     d
Run Code Online (Sandbox Code Playgroud)

因为我想执行函数a获取java resultSet中的separates列值并迭代它们.谢谢!

seg*_*sai 5

你需要这样做

select * from function1();
Run Code Online (Sandbox Code Playgroud)