sql >> Database teknologi >  >> NoSQL >> MongoDB

Tilfældig registrering fra MongoDB

Fra og med 3.2-udgivelsen af ​​MongoDB kan du få N tilfældige dokumenter fra en samling ved hjælp af $sample aggregeringspipeline-operatør:

// Get one random document from the mycoll collection.
db.mycoll.aggregate([{ $sample: { size: 1 } }])

Hvis du vil vælge det eller de tilfældige dokumenter fra en filtreret delmængde af samlingen, skal du sætte en $match foran fase til pipelinen:

// Get one random document matching {a: 10} from the mycoll collection.
db.mycoll.aggregate([
    { $match: { a: 10 } },
    { $sample: { size: 1 } }
])

Som nævnt i kommentarerne, når size er større end 1, kan der være dubletter i den returnerede dokumentprøve.



  1. Få genereret script i MongoDB C# driver

  2. rails + docker + sidekiq + Fejl ved forbindelse til Redis på 127.0.0.1:6379 (Errno::ECONNREFUSED)

  3. Hvad er Hadoop Cluster? Bedste praksis til at bygge Hadoop-klynger

  4. Har mongoDB problemer med genforbindelse, eller gør jeg det forkert?