千家信息网

TODO:从数据库中随机抽取一条记录

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,TODO:从数据库中随机抽取一条记录1.最直接,最粗暴的方法先计算记录的总数,然后选择一个从0到记录总数之间的随机数n,利用skip跳过n条记录,这是效率低下的的方法,首先的记录总数,在用skip会很
千家信息网最后更新 2026年11月01日TODO:从数据库中随机抽取一条记录

TODO:从数据库中随机抽取一条记录

1.最直接,最粗暴的方法先计算记录的总数,然后选择一个从0到记录总数之间的随机数n,利用skip跳过n条记录,这是效率低下的的方法,首先的记录总数,在用skip会很耗时间;

2.那么有什么办法能够提供效率呢,方法就是给每条记录添加一个0-1的随机因子random。

"random" : 0.5127909016609585

想要在记录中查找一个随机记录,只要计算出一个随机数并作为查询条件就好了

Result = db.getCollection('qq').findOne({"random":{"$gt":random}})

如果出现查询不到数据,那是因为随机数比记录中存的随机值都要大,就没有结果返回了,那就换个方向查询了,就可以查询到想要的数据了

Result = db.getCollection('qq').findOne({"random":{"$lt":random}});

3.更多复杂的查询,可以把随机因子包含在索引里面。

这样,随机获取一条记录,我们也可以随机获取n条记录,做相应的业务环境使用


wxgzh:ludong86


查询 数据 总数 方法 随机数 因子 效率 数据库 抽取 低下 复杂 粗暴 业务 之间 办法 就是 方向 更多 条件 环境 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网络科技 互联网科技有限公司经营范围 没上市的科技互联网公司 易互联网科技有限公司 平安科技 互联网 碳银互联网科技 丰台科技园 互联网 科技互联网创业计划书 互联网 科技馆 互联网科技博主是什么意思 团飞科技与伯堂互联网服务平台 互联网系的金融科技公司 栖莱科技互联网股份有限公司 黑科技闪耀互联网之光 美国互联网科技实力 2021互联网科技公司排名 工业互联网科技创业 陕西彩京云互联网科技有限公司 杭州科技互联网公司有哪些 互联网科技快速发展优美句子 中国互联网科技工作委员会毛军 厦门中拓互联网络科技有限公司 科技创新互联网企业 互联网金融中的现代科技 青海科技产业互联网发展 长沙茂晟互联网科技有限公司 互联网硬科技公司 云鲸互联网络科技有限公司 平安好医生打造互联网科技医疗 银川新华互联网科技学校招聘
0