Oto szybkie rozwiązanie, które może Ci się spodobać:
CREATE EXTENSION IF NOT EXISTS tsm_system_rows;
select * from task
tablesample system_rows (88);
Dla odniesienia, TABLESAMPLE znajduje się w dokumentacji SELECT:https://www. postgresql.org/docs/current/sql-select.html
Oto całkiem dobry opis funkcji:
https://www.2ndquadrant.com/ pl/blog/tablesample-in-postgresql-9-5-2/
...i jeszcze jeden artykuł na ogólny temat losowego doboru próby tego samego autora:
https://www. 2ndquadrant.com/pl/blog/tablesample-and-other-methods-for-geting-random-tuples/
tsm_system_rows to jedno z dwóch standardowych rozszerzeń próbkowania, udokumentowanych tutaj:https:// /www.postgresql.org/docs/current/tsm-system-rows.html
Hej! Cieszę się, że zadałeś to pytanie. Zwykle używam metody BERNOULLI, która jest wbudowana w SELECT, ale jest oparta na procentach. Właśnie to wypróbowałem i działa dobrze:
select * from task
tablesample BERNOULLI (1)
limit 88