Re: Tips for re-using function results within single insert - Mailing list pgsql-general

From Richard Huxton
Subject Re: Tips for re-using function results within single insert
Date
Msg-id 200209231245.32139.dev@archonet.com
Whole thread Raw
In response to Tips for re-using function results within single insert  (Chris Gamache <cgg007@yahoo.com>)
Responses Re: Tips for re-using function results within single insert  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
On Friday 20 Sep 2002 5:52 pm, Chris Gamache wrote:
> This would be nice to be able to do...
>
> insert into test_table (a,b) select random()::text as "myrandom",
>   encode("myrandom",'base64');

Well, I'd be tempted to write a wrapper function tagged as "iscachable" and
call it with a parameter of the current transaction-id (see docs on trigger
functions) or current time (the one from now() which doesn't change per
transaction). If this gives you grief, try a standard constant.

This means PG will cache results as long as the parameter doesn't change, in
this case for the duration of the transaction.

HTH

- Richard Huxton

pgsql-general by date:

Previous
From: am@fx.ro
Date:
Subject: output format for dates
Next
From: Aaron Held
Date:
Subject: Re: Monitoring a Query