Di dalam main_function() Anda:
RETURN QUERY SELECT * FROM temp_t;
...jika tabel temp_t terdiri dari mis. column1 (tipe integer), column2 (boolean) dan column3 (varchar(100)), Anda juga harus mendefinisikan tipe yang dikembalikan sebagai:
CREATE OR REPLACE FUNCTION main_function(column1 OUT integer, column2 OUT boolean, column3 OUT varchar(100)) RETURNS SETOF record AS
(...)
Cara lain adalah dengan mendefinisikan tipe data baru:
CREATE TYPE temp_t_type AS (
column1 integer,
column2 boolean,
column3 varchar(100)
);
Tipe tersebut dapat dikembalikan oleh fungsi Anda dengan cara yang sama seperti tipe data normal:
CREATE OR REPLACE FUNCTION main_function() RETURNS SETOF temp_t_type AS
(...)
...dan mengembalikan hasil dari fungsi dengan cara yang sama seperti yang disebutkan di atas.