Re: Should we optimize the `ORDER BY random() LIMIT x` case?
Vik Fearing <vik@postgresfriends.org>
From: Vik Fearing <vik@postgresfriends.org>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Aleksander Alekseev <aleksander@timescale.com>,
PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
Andrei Lepikhov <lepihov@gmail.com>, wenhui qiu <qiuwenhuifx@gmail.com>
Date: 2025-05-16T21:42:59Z
Lists: pgsql-hackers
On 16/05/2025 23:21, Tom Lane wrote: > Vik Fearing <vik@postgresfriends.org> writes: >> On 16/05/2025 15:01, Tom Lane wrote: >>> Seems to me the obvious answer is to extend TABLESAMPLE (or at least, some >>> of the tablesample methods) to allow it to work on a subquery. >> Isn't this a job for <fetch first clause>? >> FETCH SAMPLE FIRST 10 ROWS ONLY > How is that an improvement on TABLESAMPLE? Or did the committee > forget that they already have that feature? > > TABLESAMPLE seems strictly better to me here because it affords > the opportunity to specify one of several methods, which seems > like it would be useful in this context. TABLESAMPLE is hitched to a <table primary> which can be basically anything resembling a relation. So it appears the standard already allows this and we just need to implement it. -- Vik Fearing