Here is code of first procedure:
CREATE TYPE some_item AS
(id integer,
title character varying,
...
);
(id integer,
title character varying,
...
);
CREATE OR REPLACE FUNCTION some_func (integer) RETURNS some_item AS
...
itemid ALIAS for $1;
resulter some_item%rowtype;
...
SELECT INTO resulter
n_id, t_title FROM some_table WHERE n_id = itemid;
RETURN resulter;
...
itemid ALIAS for $1;
resulter some_item%rowtype;
...
SELECT INTO resulter
n_id, t_title FROM some_table WHERE n_id = itemid;
RETURN resulter;
I want to call some_func from another procedure and get result set of some_items type. Something like this:
CREATE OR REPLACE FUNCTION other_func (integer) RETURNS SETOF some_item AS
...
RETURN QUERY SELECT some_func(id) FROM another_table;
;
But when i run other_func i get:
ERROR: structure of query does not match function result type