获取 MongoDB 中的随机文档有许多种方式,但以下是几种常见的方法.
db.collection.aggregate([{ $sample: { size: 1 } }])
上面的代码将从集合中返回随机的一个文档.
假设 users 集合中有以下文档:
{
"_id" : ObjectId("5f1eb6bac236056b8f6e499d"),
"name" : "john",
"age" : 25
}
{
"_id" : ObjectId("5f1eb6c8c236056b8f6e499e"),
"name" : "peter",
"age" : 30
}
{
"_id" : ObjectId("5f1eb6d4c236056b8f6e499f"),
"name" : "jane",
"age" : 35
}
使用以下命令可以从 users 集合中获取一个随机文档:
db.users.aggregate([{ $sample: { size: 1 } }])
输出结果:
{ "_id" : ObjectId("5f1eb6c8c236056b8f6e499e"), "name" : "peter", "age" : 30 }
另一种获取随机文档的方法是基于 $in 操作符和 $rand 操作符的. $in 操作符用于在集合中查找文档并返回它们的列表. $rand 操作符用于生成一个随机数,该数用于选择要返回的文档.以下是使用 $in 和 $rand 操作符的语法:
db.collection.find({_id: { $in: [db.collection.findOne()._id] } })
db.users.find({_id: { $in: [db.users.findOne()._id] } })
{ "_id" : ObjectId("5f1eb6bac236056b8f6e499d"), "name" : "john", "age" : 25 }
通过这两种方式,可以轻松地从 MongoDB 中获取随机文档.如果需要获取多个随机文档,则需要修改示例中的 size 或数组.
以上就是土嘎嘎小编为大家整理的mongodb_随机获取一条记录的方法相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!