Re: Random tuple? - Mailing list pgsql-novice

From Philip Hallstrom
Subject Re: Random tuple?
Date
Msg-id 20021018164847.N52452-100000@cypress.adhesivemedia.com
Whole thread Raw
In response to Re: Random tuple?  (Josh Berkus <josh@agliodbs.com>)
Responses Re: Random tuple?  (Josh Berkus <josh@agliodbs.com>)
Re: Random tuple?  (Hubert depesz Lubaczewski <depesz@depesz.pl>)
List pgsql-novice
> Brendan,
>
> > Is there available a routine, intrinsic or otherwise, that allows for simple
> > extraction of one(1) random tuple from a given table or query-result?
> >
> > (The specific application I had in mind was drawing a random product from a
> > webstore's inventory to feature on a front or section web page).
>
> SELECT tablea.*, random() as random_key
> FROM tablea
> ORDER BY random_key
> LIMIT 1;
>
> And you can modify the limit to select as many random rows as you want.

Question... does the above query have to "look" at every row in tablea,
assign each a random number, sort it, and then return just one result?

If so, would it make more sense to setup a periodic process (via cron say)
to do extract 10-20 products into a featured_product table and query that?

Just thinking in terms of the amount of pounding the DB would take...

?

-philip


pgsql-novice by date:

Previous
From: Josh Berkus
Date:
Subject: Re: Random tuple?
Next
From: Josh Berkus
Date:
Subject: Re: Random tuple?