MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Случаен запис от MongoDB

Започвайки с версията 3.2 на MongoDB, можете да получите N произволни документи от колекция, като използвате $sample оператор на тръбопровод за агрегиране:

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

Ако искате да изберете произволния документ(и) от филтрирано подмножество на колекцията, добавете $match етап до тръбопровода:

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

Както е отбелязано в коментарите, когато size е по-голямо от 1, може да има дубликати в извадката на върнатия документ.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Няма достъп до свойството на обекта на отговора на Mongoose

  2. MongoDB придобива mLab  –  Какви са различните алтернативи за хостинг на MongoDB?

  3. Копирайте/клонирайте база данни в MongoDB

  4. В Flask преобразувайте формата POST обект в представяне, подходящо за mongodb

  5. Свойството с изтичане на срока на действие на Mongoose не работи правилно