main_function()内:
RETURN QUERY SELECT * FROM temp_t;
...temp_tテーブルが次の要素で構成されている場合column1(整数型)、column2(ブール値)、column3(varchar(100))の場合、返される型も次のように定義する必要があります。
CREATE OR REPLACE FUNCTION main_function(column1 OUT integer, column2 OUT boolean, column3 OUT varchar(100)) RETURNS SETOF record AS
(...)
別の方法は、新しいデータ型を定義することです:
CREATE TYPE temp_t_type AS (
column1 integer,
column2 boolean,
column3 varchar(100)
);
この型は、通常のデータ型と同じ方法で関数から返すことができます。
CREATE OR REPLACE FUNCTION main_function() RETURNS SETOF temp_t_type AS
(...)
...そして、上記と同じ方法で関数から結果を返します。