Hubert recently posted his thoughts on this topic:
I've encountered with this problem several times in web development and
every time found out that the best (in terms of performance) solution is to
use some pseudo random approach (such as ">= random() limit 1" or "limit 1
offset random()*N" or even pre-caching rows on app side).
On 10/9/07, Pavel Stehule <[EMAIL PROTECTED]> wrote:
> I found lot of slow queries in some databases which I checked based on
> advice 4.1. from FAQ,
> To SELECT a random row, use:
> SELECT col
> FROM tab
> ORDER BY random()
> LIMIT 1;
> It's robust and slow on bigger tables. Can we add some better solutions?