MongoDBランダム取得テーブルにあるn個のデータ
484 ワード
db.user.aggregate( [ { $sample: { size: 10 } } ] )
上のコマンドは、集合userの中の20のデータをランダムに返します.MongoDBを使用したaggregate集計関数+$sample表現
db.comコレクションname.aggregate()
$sample表現:
3.2+バージョンでは、大きなデータの「データサンプリング」と同様に、inputからランダムにN個のdocumentsを選択し、文法「{sample:{size:}」.Nがcollection内の総データの5%より大きい場合、sampleはcollectionスキャン、sortを実行し、top N条文書を選択する.Nが5%未満であれば、WiredTigerに対しては、collectionを巡回し、「疑似乱数」を使用してN個のドキュメントを選択します.MMAPv 1エンジンに対しては、_idインデックス上でランダムにNつのドキュメントを選択します.