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 相关文章推荐
php+javascript的日历控件
Nov 19 PHP
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
May 04 PHP
php 目录与文件处理-郑阿奇(续)
Jul 04 PHP
谈谈关于php的优点与缺点
Apr 11 PHP
深入PHP内存相关的功能特性详解
Jun 08 PHP
将FCKeditor导入PHP+SMARTY的实现方法
Jan 15 PHP
PHP输出缓冲控制Output Control系列函数详解
Jul 02 PHP
Yii使用Captcha验证码的方法
Dec 28 PHP
php文件上传的两种实现方法
Apr 04 PHP
php使用preg_match()函数验证ip地址的方法
Jan 07 PHP
PHP实现转盘抽奖算法分享
Apr 15 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
Apr 14 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 has encountered an Access Violation at 7C94BD02解决方法
2009/08/24 PHP
PHP中MVC模式的模板引擎开发经验分享
2011/03/23 PHP
php使用多个进程同时控制文件读写示例
2014/02/28 PHP
PHP根据传入参数合并多个JS和CSS文件的简单实现
2014/06/13 PHP
禁止刷新,回退的JS
2006/11/25 Javascript
js 发个判断字符串是否为符合标准的函数
2009/04/27 Javascript
JS自动缩小超出大小的图片
2012/10/12 Javascript
往光标所在位置插入值的js代码
2013/09/22 Javascript
根据身份证号自动输出相关信息(籍贯,出身日期,性别)
2013/11/15 Javascript
jQuery事件绑定用法详解(附bind和live的区别)
2016/01/19 Javascript
对象转换为原始值的实现方法
2016/06/06 Javascript
浅析Nodejs npm常用命令
2016/06/14 NodeJs
Bootstrap Multiselect 常用组件实现代码
2017/07/09 Javascript
JavaScript实现简单的双色球(实例讲解)
2017/07/31 Javascript
JS基于设计模式中的单例模式(Singleton)实现封装对数据增删改查功能
2018/02/06 Javascript
15个顶级开源JavaScript框架和库
2018/10/10 Javascript
使用vue重构资讯页面的实例代码解析
2019/11/26 Javascript
JS实现简单的表格增删
2020/01/16 Javascript
Jquery如何使用animation动画效果改变背景色的代码
2020/07/20 jQuery
Python扫描IP段查看指定端口是否开放的方法
2015/06/09 Python
Python字符串特性及常用字符串方法的简单笔记
2016/01/04 Python
Python双精度浮点数运算并分行显示操作示例
2017/07/21 Python
python梯度下降法的简单示例
2018/08/31 Python
Python使用random.shuffle()打乱列表顺序的方法
2018/11/08 Python
Python如何实现后端自定义认证并实现多条件登陆
2020/06/22 Python
英国医生在线预约:Top Doctors
2019/10/30 全球购物
给定一个时间点,希望得到其他时间点
2013/11/07 面试题
资产评估专业大学生求职信
2013/09/29 职场文书
面料业务员岗位职责
2013/12/26 职场文书
简历自我评价模版
2014/01/31 职场文书
给老师的检讨书
2014/02/11 职场文书
个人批评与自我批评范文
2014/10/17 职场文书
工会经费申请报告
2015/05/15 职场文书
民间借贷纠纷答辩状
2015/08/03 职场文书
《我要的是葫芦》教学反思
2016/02/18 职场文书
html网页引入svg图片的4种方式
2022/08/05 HTML / CSS