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 相关文章推荐
PHP4之COOKIE支持详解
Oct 09 PHP
php中根据某年第几天计算出日期年月日的代码
Feb 24 PHP
Sorting Array Values in PHP(数组排序)
Sep 15 PHP
解析ajax事件的调用顺序
Jun 17 PHP
PHP与MongoDB简介|安全|M+PHP应用实例详解
Jun 17 PHP
php简单实现快速排序的方法
Apr 04 PHP
PHP SPL标准库之SplFixedArray使用实例
May 12 PHP
php如何连接sql server
Oct 16 PHP
详解PHP用substr函数截取字符串中的某部分
Dec 03 PHP
visual studio code 调试php方法(图文详解)
Sep 15 PHP
PHP如何实现订单的延时处理详解
Dec 30 PHP
thinkphp 获取控制器及控制器方法
Apr 16 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
php 过滤危险html代码
2009/06/29 PHP
PHP关于IE下的iframe跨域导致session丢失问题解决方法
2013/10/10 PHP
php数组转换js数组操作及json_encode的用法详解
2013/10/26 PHP
php字符串截取函数用法分析
2014/11/25 PHP
推荐5款跨平台的PHP编辑器
2014/12/25 PHP
php微信开发之百度天气预报
2016/11/18 PHP
php实现支持中文的文件下载功能示例
2017/08/30 PHP
PHP命名空间定义与用法实例分析
2019/08/14 PHP
jQuery帮助之CSS尺寸(五)outerHeight、outerWidth
2009/11/14 Javascript
js 与或运算符 || &amp;&amp; 妙用
2009/12/09 Javascript
js定义对象或数组直接量时各浏览器对多余逗号的处理(json)
2011/03/05 Javascript
Js+Flash实现访问剪切板操作
2012/11/20 Javascript
JQuery入门——用bind方法绑定事件处理函数应用介绍
2013/02/05 Javascript
javascript判断非数字的简单例子
2013/07/18 Javascript
JQ获取动态加载的图片大小的正确方法分享
2013/11/08 Javascript
JS留言功能的简单实现案例(推荐)
2016/06/23 Javascript
基于js实现checkbox批量选中操作
2016/11/22 Javascript
谈谈Vue.js——vue-resource全攻略
2017/01/16 Javascript
详解vue 中使用 AJAX获取数据的方法
2017/01/18 Javascript
jQuery实现鼠标拖拽登录框移动效果
2020/09/13 jQuery
Python实现读取Properties配置文件的方法
2018/03/29 Python
利用Python将每日一句定时推送至微信的实现方法
2018/08/13 Python
python 实现保存最新的三份文件,其余的都删掉
2019/12/22 Python
CSS3 transforms应用于背景图像的解决方法
2019/04/16 HTML / CSS
苹果Mac升级:MacSales.com
2017/11/20 全球购物
一家外企的面试题目(C/C++面试题,C语言面试题)
2014/03/24 面试题
计算机大学生的自我评价
2013/10/15 职场文书
优秀的个人求职信范文
2014/05/09 职场文书
2014年卫生保健工作总结
2014/12/08 职场文书
2015出纳试用期工作总结
2014/12/12 职场文书
2014年小学美术工作总结
2014/12/20 职场文书
大学生实习介绍信
2015/05/05 职场文书
执行力心得体会范文
2016/01/11 职场文书
导游词之太行山青龙峡
2020/01/14 职场文书
详解thinkphp的Auth类认证
2021/05/28 PHP
【D4DJ】美少女DJ企划 动画将于明年冬季开播第2季
2022/04/11 日漫