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 相关文章推荐
main.php
Dec 09 PHP
模拟flock实现文件锁定
Feb 14 PHP
解析php中mysql_connect与mysql_pconncet的区别详解
May 15 PHP
PHP中spl_autoload_register()和__autoload()区别分析
May 10 PHP
浅析php工厂模式
Nov 25 PHP
PHP实现恶意DDOS攻击避免带宽占用问题方法
May 27 PHP
浅谈PHP链表数据结构(单链表)
Jun 08 PHP
php好代码风格的阶段性总结
Jun 25 PHP
PHP实现合并两个排序链表的方法
Jan 19 PHP
Laravel多用户认证系统示例详解
Mar 13 PHP
PHP高并发和大流量解决方案整理
Dec 24 PHP
PHP pthreads v3下worker和pool的使用方法示例
Feb 21 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 session 错误
2009/05/21 PHP
探讨如何使用SimpleXML函数来加载和解析XML文档
2013/06/07 PHP
PHP操作文件的一些基本函数使用示例
2014/11/18 PHP
ioncube_loader_win_5.2.dll的错误解决方法
2015/01/04 PHP
javascript将数组插入到另一个数组中的代码
2013/01/10 Javascript
JS实现图片无间断滚动代码汇总
2014/07/30 Javascript
实例讲解Jquery中隐藏hide、显示show、切换toggle的用法
2016/05/13 Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
2017/01/05 Javascript
JS实现中国公民身份证号码有效性验证
2017/02/20 Javascript
Vue.js实战之通过监听滚动事件实现动态锚点
2017/04/04 Javascript
require.js中的define函数详解
2017/07/10 Javascript
JS如何设置元素样式的方法示例
2017/08/28 Javascript
web前端页面生成exe可执行文件的方法
2018/02/08 Javascript
解决element-ui中下拉菜单子选项click事件不触发的问题
2018/08/22 Javascript
js中的this的指向问题详解
2019/08/29 Javascript
javascript/jquery实现点击触发事件的方法分析
2019/11/11 jQuery
[01:37]TI4西雅图DOTA2前线报道 VG拿下首胜教练357给出获胜秘诀
2014/07/10 DOTA
[44:40]KG vs LGD 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
python模拟新浪微博登陆功能(新浪微博爬虫)
2013/12/24 Python
Python中列表的一些基本操作知识汇总
2015/05/20 Python
简单谈谈Python的pycurl模块
2018/04/07 Python
一些Centos Python 生产环境的部署命令(推荐)
2018/05/07 Python
Python numpy实现二维数组和一维数组拼接的方法
2018/06/05 Python
python 除法保留两位小数点的方法
2018/07/16 Python
VSCode Python开发环境配置的详细步骤
2019/02/22 Python
Python3+Appium安装使用教程
2019/07/05 Python
python和pywin32实现窗口查找、遍历和点击的示例代码
2020/04/01 Python
python实现在列表中查找某个元素的下标示例
2020/11/16 Python
Vertbaudet西班牙网上商店:婴儿服装、童装、母婴用品和儿童家具
2019/10/16 全球购物
应届电子商务毕业自荐书范文
2014/02/11 职场文书
彩色的非洲教学反思
2014/02/18 职场文书
授权委托书样本
2014/04/03 职场文书
审计专业自荐信范文
2014/04/21 职场文书
普通党员四风问题对照检查材料
2014/09/27 职场文书
企业财务经理岗位职责
2015/04/08 职场文书
永远是春天观后感
2015/06/12 职场文书