Voici une solution rapide qui pourrait vous plaire :
CREATE EXTENSION IF NOT EXISTS tsm_system_rows;
select * from task
tablesample system_rows (88);
Pour référence, TABLESAMPLE se trouve dans la documentation de SELECT :https://www. postgresql.org/docs/current/sql-select.html
Voici un assez bon résumé de la fonctionnalité :
https://www.2ndquadrant.com/ fr/blog/tablesample-in-postgresql-9-5-2/
...et un autre article sur le sujet général de l'échantillonnage aléatoire du même auteur :
https://www. 2ndquadrant.com/en/blog/tablesample-and-other-methods-for-get-random-tuples/
tsm_system_rows est l'une des deux extensions d'échantillonnage standard, documentées ici :https:/ /www.postgresql.org/docs/current/tsm-system-rows.html
Hé! Je suis content que vous ayez posé cette question. J'ai tendance à utiliser la méthode BERNOULLI, qui est intégrée à SELECT prête à l'emploi, mais elle est basée sur un pourcentage. Je viens d'essayer ceci et cela fonctionne bien :
select * from task
tablesample BERNOULLI (1)
limit 88