Login
网站首页 > 文章中心 > 其它

mongodb_随机获取一条记录的方法

作者:小编 更新时间:2023-10-21 07:37:44 浏览量:164人看过

获取 MongoDB 中的随机文档有许多种方式,但以下是几种常见的方法.

方法一:使用 $sample 操作符

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 操作符用于生成一个随机数,该数用于选择要返回的文档.以下是使用 $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_随机获取一条记录的方法相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章