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 相关文章推荐
一个ftp类(ini.php)
Oct 09 PHP
PHP 处理图片的类实现代码
Oct 23 PHP
PHP截取指定图片大小的方法
Dec 10 PHP
php自定义加密与解密程序实例
Dec 31 PHP
微信access_token的获取开发示例
Apr 16 PHP
用HTML/JS/PHP方式实现页面延时跳转的简单实例
Jul 18 PHP
PHP在linux上执行外部命令的方法
Feb 06 PHP
PHP中error_reporting函数用法详细介绍
Jun 11 PHP
Laravel框架中自定义模板指令总结
Dec 17 PHP
PHP区块查询实现方法分析
May 12 PHP
PHP实现的杨辉三角求解算法分析
Mar 11 PHP
关于Laravel参数验证的一些疑与惑
Nov 19 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
UTF8编码内的繁简转换的PHP类
2009/07/09 PHP
php解决约瑟夫环示例
2014/04/09 PHP
对PHP新手的一些建议(PHP学习经验总结)
2014/08/20 PHP
php三种实现多线程类似的方法
2015/10/30 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
学习JS面向对象成果 借国庆发布个最新作品与大家交流
2009/10/03 Javascript
js跳转页面方法实现汇总
2014/02/11 Javascript
jQuery简易图片放大特效示例代码
2014/06/09 Javascript
整理Javascript基础语法学习笔记
2015/11/29 Javascript
node.js中的事件处理机制详解
2016/11/26 Javascript
jQuery实现搜索页面关键字的功能
2017/02/16 Javascript
Angularjs中的ui-bootstrap的使用教程
2017/02/19 Javascript
BootStrap Validator 根据条件在JS中添加或移除校验操作
2017/10/12 Javascript
Vue实现移动端页面切换效果【推荐】
2018/11/13 Javascript
最简单的vue消息提示全局组件的方法
2019/06/16 Javascript
jQuery 移除事件的方法
2020/06/20 jQuery
tensorflow入门之训练简单的神经网络方法
2018/02/26 Python
对pandas中iloc,loc取数据差别及按条件取值的方法详解
2018/11/06 Python
pandas DataFrame 数据选取,修改,切片的实现
2020/04/24 Python
简单了解如何封装自己的Python包
2020/07/08 Python
css3 盒模型以及box-sizing属性全面了解
2016/09/20 HTML / CSS
html5 canvas手势解锁源码分享
2020/01/07 HTML / CSS
英国领先的葡萄酒专家:Majestic Wine
2017/05/30 全球购物
抽象方法、抽象类怎样声明
2014/10/25 面试题
用缩写的指针比较"if(p)" 检查空指针是否可靠?如果空指针的内部表达不是0会怎么样?
2014/01/05 面试题
小组合作学习反思
2014/02/18 职场文书
网络工程师自荐书范文
2014/04/01 职场文书
2014年会策划方案
2014/05/11 职场文书
写给父母的感谢信
2015/01/22 职场文书
法务专员岗位职责
2015/02/14 职场文书
小学推普周活动总结
2015/05/07 职场文书
2016年社区创先争优活动总结
2016/04/05 职场文书
超级实用的公文标题大全!
2019/07/19 职场文书
导游词之新疆尼雅遗址
2019/10/16 职场文书
Vue-Element-Admin集成自己的接口实现登录跳转
2021/06/23 Vue.js
如何利用 CSS Overview 面板重构优化你的网站
2021/10/24 HTML / CSS