Best way to select a random row from a derived table - Mailing list pgsql-hackers

Hello hackers and postgressers,

I am aware of 2 ways to select a random row from a table:

    1) select * from table_name order by random() limit 1;
        -- terribly inefficient

    2) select * from table_name tablesample system_rows(1) limit 1;
        -- only works on tables, not views or subqueries

Is there an option that is reasonably efficient and can be used on views and subqueries?

Thanks!
Ryan

pgsql-hackers by date:

Previous
From: Jeff Davis
Date:
Subject: Re: JIT compiling with LLVM v9.0
Next
From: Fabien COELHO
Date:
Subject: Re: General purpose hashing func in pgbench