Re: Partitioning... - Mailing list pgsql-general

From Jim C. Nasby
Subject Re: Partitioning...
Date
Msg-id 20060613230917.GQ34196@pervasive.com
Whole thread Raw
In response to Re: Partitioning...  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Partitioning...
List pgsql-general
On Mon, Jun 12, 2006 at 06:58:06PM -0400, Tom Lane wrote:
> "Milen Kulev" <makulev@gmx.net> writes:
> > What is wrong with random() ?
>
> Not guaranteed to be stable across the multiple evaluations that the
> rule will perform ... remember a rule is a macro and has the usual
> multiple-evaluation gotchas in the face of volatile arguments.

I believe a safe alternative would be...

INSERT INTO ... SELECT * FROM
    (SELECT random()*20 FROM ...)
;

You might need to add an ORDER BY to the subquery to ensure PostgreSQL
doesn't pull it into the main query.
--
Jim C. Nasby, Sr. Engineering Consultant      jnasby@pervasive.com
Pervasive Software      http://pervasive.com    work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf       cell: 512-569-9461

pgsql-general by date:

Previous
From: "Jim C. Nasby"
Date:
Subject: Re: BLOB & Searching
Next
From: "Jim C. Nasby"
Date:
Subject: Re: plpgsql Result Sets