Re: SRFs returning records from a view - Mailing list pgsql-general

From mark.lubratt@indeq.com
Subject Re: SRFs returning records from a view
Date
Msg-id 20050601215735.29079.qmail@gem-wbe01.mesa1.secureserver.net
Whole thread Raw
In response to SRFs returning records from a view  (mark.lubratt@indeq.com)
List pgsql-general

> -------- Original Message --------
> Subject: Re: [GENERAL] SRFs returning records from a view
> From: "Joshua D. Drake" <jd@commandprompt.com>
> Date: Wed, June 01, 2005 4:39 pm
> To: mark.lubratt@indeq.com
> Cc: pgsql-general@postgresql.org
>
> mark.lubratt@indeq.com wrote:
> > Hello!
> >
> > I have a view that I'm putting into a report in my application.  I'd
> > like to get several blank lines returned by the view as well as the
> > legitimate data (to leave room in the report for manual entries).  I
> > thought I could make a SRF that would return the data from the view and
> > then spit out a number of blank records.
> >
> > As a first step in getting my SRF feet wet, I tried:
> >
> > CREATE OR REPLACE FUNCTION bluecard(int4)
> >   RETURNS SETOF view_bluecard AS
> > $BODY$declare
> >     r    view_bluecard%rowtype;
> > begin
> >     for r in select * from view_bluecard where job_id = jn loop
> >         return next r;
> >     end loop;
> >     return;
> > end;$BODY$
> >   LANGUAGE 'plpgsql' VOLATILE;
> >
> > where view_bluecard is the view that is already defined.  When I try
> >
> > select bluecard(1130);
>
> select * from bluecard(1130)?
>

Sorry, 1130 is the job_id for the select's where clause in the function.
 Does that make sense?

If I execute:

select * from view_bluecard where job_id = 1130;

I get the proper set of records.  But, I want to add to them in the SRF
as I explained above.  Thus, I don't think I can do it with just a view
(even using a union within the view as I don't know how many blanks the
user willl want).

Regards,
Mark



pgsql-general by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Status of interactive psql's error handling?
Next
From: "pgsql-general@list.coretech.ro"
Date:
Subject: Re: PITR restore hot standby