あなたが好むかもしれない簡単な解決策は次のとおりです:
CREATE EXTENSION IF NOT EXISTS tsm_system_rows;
select * from task
tablesample system_rows (88);
参考までに、TABLESAMPLEはSELECTのドキュメントにあります: https://www。 postgresql.org/docs/current/sql-select.html
この機能の非常に優れた記述は次のとおりです。
https://www.2ndquadrant.com/ en / blog / tablesample-in-postgresql-9-5-2 /
...そして同じ著者によるランダムサンプリングの一般的な主題に関する別の記事:
https://www。 2ndquadrant.com/en/blog/tablesample-and-other-methods-for-getting-random-tuples/
tsm_system_rowsは、次の2つの標準サンプリング拡張機能の1つです。
おい!この質問をしてくれてうれしいです。私は、箱から出してSELECTに組み込まれているBERNOULLI法を使用する傾向がありますが、これはパーセンテージに基づいています。これを試してみましたが、問題なく動作します:
select * from task
tablesample BERNOULLI (1)
limit 88