PHP实现在数据库百万条数据中随机获取20条记录的方法


Posted in PHP onApril 19, 2017

本文实例讲述了PHP实现在数据库百万条数据中随机获取20条记录的方法。分享给大家供大家参考,具体如下:

额,为什么要写这个?

在去某个公司面试时,让写个算法出来,当时就蒙了,我开发过程中用到算法的吗?又不是大数据开发,分析。

今天偶然想起来一个坑爹数据,如:PHP取百万条数据中随机20条记录,当时就用的算法。

1.先统计统计数据库多少条记录(这个做个数据缓存,如1小时重新统计一次),

2.根据总条数,随机1次,1次性取出20条记录(当然这个就相当于分页了,要求不高的话,这个最快,我用的就是这个);

还有一种方法,随机20次,重复执行20次。

例如:

$sum=800000;//得到总条数
//循环取数据
for($i=1;$i<=20;$i++){
  $offset=mt_rand(1,$sum);
  //控制重复对比的,请自行实现
  //数据库取数据的,请自行实现
  $sql="select * from table limit $offset,1";
  echo $sql;
}

当然还有其他随机方法,如:https://3water.com/article/18299.htm

PHP 相关文章推荐
?生?D片??C字串
Dec 06 PHP
php出现Cannot modify header information问题的解决方法大全
Apr 09 PHP
PHP 中执行排序与 MySQL 中排序
Apr 21 PHP
PHP 多维数组排序实现代码
Aug 05 PHP
php的urlencode()URL编码函数浅析
Aug 09 PHP
php提示Call-time pass-by-reference has been deprecated in的解决方法[已测]
May 06 PHP
浅析Dos下运行php.exe,出现没有找到php_mbstring.dll 错误的解决方法
Jun 29 PHP
利用php+mcDropdown实现文件路径可在下拉框选择
Aug 07 PHP
简单的php文件上传(实例)
Oct 27 PHP
PHP函数microtime()用法与说明
Dec 04 PHP
PHP 文件上传限制问题
Sep 01 PHP
Laravel等框架模型关联的可用性浅析
Dec 15 PHP
php简单随机字符串生成方法示例
Apr 19 #PHP
PHP实现针对日期,月数,天数,周数,小时,分,秒等的加减运算示例【基于strtotime】
Apr 19 #PHP
PHP获取文本框、密码域、按钮的值实例代码
Apr 19 #PHP
PHP实现活动人选抽奖功能
Apr 19 #PHP
thinkphp下MySQL数据库读写分离代码剖析
Apr 18 #PHP
Thinkphp通过一个入口文件如何区分移动端和PC端
Apr 18 #PHP
Yii2汉字转拼音类的实例代码
Apr 18 #PHP
You might like
超级实用的7个PHP代码片段分享
2012/01/05 PHP
php.ini修改php上传文件大小限制的方法详解
2013/06/17 PHP
PHP实现的网站目录扫描索引工具
2016/09/08 PHP
Thinkphp5.0 框架实现控制器向视图view赋值及视图view取值操作示例
2019/10/12 PHP
laravel框架实现后台登录、退出功能示例
2019/10/31 PHP
使用基于jquery的gamequery插件做JS乒乓球游戏
2011/07/31 Javascript
JavaScript设计模式之单例模式实例
2014/09/24 Javascript
Nodejs全栈框架StrongLoop推荐
2014/11/09 NodeJs
js实现可兼容IE、FF、Chrome、Opera及Safari的音乐播放器
2015/02/11 Javascript
使用AngularJS创建自定义的过滤器的方法
2015/06/18 Javascript
辨析JavaScript中的Undefined类型与null类型
2016/05/26 Javascript
JavaScript拖动层Div代码
2017/03/01 Javascript
angular4 如何在全局设置路由跳转动画的方法
2017/08/30 Javascript
解析Vue2 dist 目录下各个文件的区别
2017/11/22 Javascript
vue实现文章内容过长点击阅读全文功能的实例
2017/12/28 Javascript
VUE实时监听元素距离顶部高度的操作
2020/07/29 Javascript
Nuxt的路由动画效果案例
2020/11/06 Javascript
python制作填词游戏步骤详解
2019/05/05 Python
对django后台admin下拉框进行过滤的实例
2019/07/26 Python
python web框架中实现原生分页
2019/09/08 Python
python3 中时间戳、时间、日期的转换和加减操作
2020/07/14 Python
Python如何给函数库增加日志功能
2020/08/04 Python
python基本算法之实现归并排序(Merge sort)
2020/09/01 Python
彻底解决Python包下载慢问题
2020/11/15 Python
Volcom英国官方商店:美国殿堂级滑板、冲浪、滑雪服装品牌
2019/03/13 全球购物
卡骆驰英国官网:Crocs英国
2019/08/22 全球购物
全球最大的生存食品、水和装备专用在线市场:BePrepared.com
2020/01/02 全球购物
一套带答案的C++笔试题
2014/01/10 面试题
金属材料工程毕业生个人的自我评价
2013/11/28 职场文书
财务部出纳岗位职责
2013/12/22 职场文书
1亿有多大教学反思
2014/05/01 职场文书
道路施工安全责任书
2014/07/24 职场文书
学校师德师风自我剖析材料
2014/09/29 职场文书
后勤个人工作总结
2015/02/28 职场文书
管理失职检讨书范文
2015/05/05 职场文书
关于企业的执行力标语大全
2020/01/06 职场文书