Gerhard Wiesinger <lists@xxxxxxxxxxxxx> writes: > Since getSums() is a cursor and is complex and takes long time getSums > should only be evaluated once. Is there a better solution available to > get both columns from the function in the select? You need a sub-select, along the lines of SELECT cur_date, (gs).sum_m1, (gs).sum_m2 FROM ( SELECT cur_date, getSums(start_ts, stop_ts) AS gs FROM getDatesTimestamps($1, $2) OFFSET 0 ) AS ss ; The OFFSET bit is a kluge, but is needed to keep the planner from flattening the subquery and undoing your work. regards, tom lane -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general