Hi all,
this may sound trivial, but I'm not able to create a simple function
that returns either an array or a record.
For instance, the following:
CREATE TYPE t_agg AS (
t_count int,
t_sum int
);
CREATE OR REPLACE FUNCTION f_compute()
RETURNS t_agg
AS
$BODY$
DECLARE
tot t_agg%rowtype;
BEGIN
SELECT count(id)
, sum( f_value )
INTO STRICT tot
FROM my_table;
RETURN tot;
END
$BODY$
LANGUAGE plpgsql;
provides a tuple of t_agg with a simple count and sum.
1) is it possible to change the return value to int[] (and
consequently tot variable) using the SELECT INTO statement?
2) if I change the return type to record (and consequently the tot
variable), how should I name columns so that the parse knows what
tuple it is returning still using the SELECT INTO?
Thanks,
Luca