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
转载于:https://blog.51cto.com/onetodo/1876375
TODO:从数据库中随机抽取一条记录相关推荐
- laravel mysql rand_laravel如何从mysql数据库中随机抽取n条数据(高性能) - Laravel学习网...
laravel如何高性能地从mysql数据库中随机获取n条数据,有时候我们常常会需要从数据库随机获取数据,比如:给工作人员随机分配10个订单,随机从数据库中随机抽查100个用户:这样我们就需要随机从数 ...
- Oracle中随机抽取N条记录,使用Oracle分析函数随机抽取N条记录
模拟一个歌曲表,有歌曲ID和作者ID,并且初始化一些数据 create table music( music_id int primary key, userid int ); 模拟一个歌曲表,有歌曲 ...
- php 数组 随机选择_php中通过数组进行高效随机抽取指定条记录的算法
php使用数组array_rand()函数进行高效随机抽取指定条数的记录,可以随机抽取数据库中的记录,适合进行随机展示和抽奖程序. 该算法主要是利用php的array_rand()函数,下面看一下ar ...
- 检索数据_12_从表中随机返回N条记录
从表中随机返回N条记录 需求描述 需求:从雇员表emp里随机查询5条雇员的名称和工资信息. 解决方法:使用数据库里内置的限制行数函数结合随机函数来解决. 注: 数据库数据集SQL脚本详见如下链接地址 ...
- 不同数据库中查询前几条记录的用法(SQL Server/Oracle/Postgresql)
SQL在不同数据库中查询前几条记录的用法分类 1. orACLE Select * FROM TABLE1 Where ROWNUM<=N 2. INFORMIX Select FIRST N ...
- mysql 获取一条数据_MySQL数据库中随机获取一条或多条记录
在开发过程中遇到了一个问题,使用MySQL数据库,用SQL语句在表中随机获取一条或多条数据,看似简单,但是往深层研究的话还是很有深度的,查了好多资料,接下来给大家分享一下: 1. 随机获取单条数据 S ...
- 查询最近一千条数据mysql_保留mysql数据库中的最新1000条记录
mysql_connect("localhost","root","root"); mysql_select_db("test&q ...
- Java SSH Hibernate通过代码实现从数据库中随机取出指定条数的随机数据
2019独角兽企业重金招聘Python工程师标准>>> /*** 根据提供的数量获取随机的问题列表* @param totel* @return*/public List getRa ...
- 从数据库表中随机获取N条记录的SQL语句
Oracle: select * from (select * from tableName order by dbms_random.value) where rownum < ...
最新文章
- 神经网络输出大小(卷积层及池化层)
- 【Java】 5.6 类的继承
- Day3-----delayPrompt
- ASCII表完整版(包含16进制对应表)
- Java 开发环境配置 win10
- 听力阈值计算_中耳功能分析:临床听力测试的重要手段!
- 最新基于adt-bundle-windows-x86的android开发环境搭建
- (9)Zynq UART控制器介绍
- JQuery学习记录——jQuery对象和DOM对象的转换
- 局域网电脑Sql2008 R2无法连接到localhost 解决方案
- input或者button type=submit,设置disabled属性后,无法提交代码到后台
- jQuery基础资料(三)
- 机器学习视频推荐-绝对的通俗易懂(线性回归,逻辑回归,朴素贝叶斯分类器,K-近邻,SVM,决策树,随机森林,XGboost,k-means聚类)
- 浅谈木材加工企业的电气火灾隐患及电气火灾监控系统的应用
- 一文了解CISP,太全了
- 分布式任务ijobhandle
- java.util.concurrent.TimeoutException: Waited 3000 milliseconds (plus 2 milliseconds, 351400 nanosec
- 任正非:外界过分吹捧华为,导致员工惰怠,华为必须保持清醒
- SharePoint debug - Unable to render the data. If the problem persists, contact your web server admin
- 计算机技能培训心得,计算机技能培训心得感想.doc
热门文章
- 【Qt开发】Qt Creator在Windows上的调试器安装与配置
- java类的加载机制
- hdu 1754/zstu 3121 I Hate It(线段树)
- LeetCode—211. 添加与搜索单词 - 数据结构设计
- halcon 单通道图像转成3通道_halcon图像处理基本运算
- MQTT 物联网协议
- 全国计算机等级考试题库二级C操作题100套(第41套)
- bootdefault和configuration_springboot常用注解、包引入和自动配置功能解读
- mysql 从库 速度太慢_mysql查询速度慢的原因[整理版]
- 数据库:SQLServer中GUID用法介绍