$sample (ランダムサンプル)

最終更新:2026-10-09

$sample (ランダムサンプル)

$sample は、指定した数のドキュメントをランダムに選択します — サンプリング分析、テストデータ、ランダムピックに便利です。コレクション全体をスキャンしない場合があり、ランダム性も完全に均一ではありません。近似のランダムサンプルとして扱いましょう。出力順もランダムです。

カテゴリコアステージ
MongoDB バージョン1.0+
例の言語mongosh(シェル)

📝 構文

{ $sample: { size: <positive integer> } }

⚙️ パラメータ

sizeサンプリングするドキュメント数。正の整数である必要があります。

戻り値:ランダムに抽出されたドキュメントストリーム

▶ 例

以下のコマンドをローカルの mongosh で実行してください(mongod が起動済みである必要があります):

// $sample: ランダムに 5 人のユーザーを選ぶ
db.users.aggregate([
  { $sample: { size: 5 } }
])

出力:

// 実行ごとに結果が変わる場合がある

📌 注意事項

さらなる実践ケースを近日公開予定。

📚 関連チュートリアル

❓ よくある質問

Q$sample は完全にランダムですか?
A厳密には均一ではありません。近似サンプリングやテスト向けの疑似ランダムな仕組みを使います。
Q$sample と $limit の違いは?
A$limit はパイプライン順の最初の N 件を取ります。$sample は順序の保証なしに N 件をランダムに選びます。
Q$sample は $match の後に使えますか?
Aはい。$sample は通常のステージなので、フィルター後の結果からサンプリングできます。
Web-Tutorial.com

Web-Tutorial 技術チーム

複数の開発者によって共同維持されているプログラミングチュートリアルプラットフォーム。各チュートリアルは専門分野の開発者が執筆・レビューしています。正確で信頼性の高いコンテンツを目指しています — 問題を見つけた場合はお知らせください。

100%