I'll be hornswoggled: that works.
I hadn't expected a problem, simply because I knew the range in advance:
here is the distribution for the select that I was working with:
extracts=# select billing_frequency, count (*) from report_table group by
billing_frequency;
 billing_frequency | count 
-------------------+-------
 Monthly           | 50431
 Quarterly         |  7742
 Semi-Annual       |   167
 Yearly            |  8573
(4 rows)
Nevertheless, just adding an "...else return new;" did the trick.
I don't understand the logic of this, but then, if I stopped to consider
every mystery, I'd never get any work done:-).
Thanks very much for your help (again).

> -----Original Message-----
> From: Tom Lane [SMTP:[EMAIL PROTECTED]]
> Sent: Wednesday, February 07, 2001 12:48 PM
> To:   Jeff Eckermann
> Cc:   '[EMAIL PROTECTED]'
> Subject:      Re: [SQL] Use of RETURN in pl/pgsql function 
> 
> Jeff Eckermann <[EMAIL PROTECTED]> writes:
> > I thought (based on recent posts) that this use of RETURN is allowed,
> but
> > when trying an insert to report_table, I get the following error:
> > ERROR:  control reaches end of trigger procedure without RETURN
> 
> Looks to me like you didn't cover the case where billing_frequency is
> not any of the values you tested for.  Maybe you just want to raise
> an error in that case...
> 
>                       regards, tom lane

Reply via email to