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+AJAX聊天程序[聊天室]提供下载
Jul 21 PHP
php xml文件操作实现代码(二)
Mar 20 PHP
php session安全问题分析
Jun 24 PHP
PHP类的静态(static)方法和静态(static)变量使用介绍
Feb 19 PHP
解析php5配置使用pdo
Jul 03 PHP
Codeigniter中mkdir创建目录遇到权限问题和解决方法
Jul 25 PHP
PHP打开和关闭文件操作函数总结
Nov 18 PHP
php实现高效获取图片尺寸的方法
Dec 12 PHP
Win7下手动安装apache2.2、php5.4笔记
Apr 03 PHP
Laravel框架路由管理简单示例
May 07 PHP
php设计模式之观察者模式定义与用法经典示例
Sep 19 PHP
PHP网站常见安全漏洞,及相应防范措施总结
Mar 01 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中$美元符号与Zen Coding冲突问题解决方法分享
2014/05/28 PHP
php带抄送和密件抄送的邮件发送方法
2015/03/20 PHP
Yii框架防止sql注入,xss攻击与csrf攻击的方法
2016/10/18 PHP
JQuery困惑—包装集 DOM节点
2009/10/16 Javascript
js和jquery使按钮失效为不可用状态的方法
2014/01/26 Javascript
JS字符串拼接在ie中都报错的解决方法
2014/03/27 Javascript
jquery序列化表单以及回调函数的使用示例
2014/07/02 Javascript
基于javascript实现图片滑动效果
2016/05/07 Javascript
JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
2016/05/10 Javascript
webpack打包并将文件加载到指定的位置方法
2018/02/22 Javascript
Vue 创建组件的两种方法小结(必看)
2018/02/23 Javascript
vue实现路由不变的情况下,刷新页面操作示例
2020/02/02 Javascript
基于JS实现快速读取TXT文件
2020/08/25 Javascript
[03:57]DOTA2英雄梦之声_第03期_幻影刺客
2014/06/21 DOTA
Python中使用ConfigParser解析ini配置文件实例
2014/08/30 Python
利用Python演示数型数据结构的教程
2015/04/03 Python
Python数字图像处理之霍夫线变换实现详解
2018/01/12 Python
python实现俄罗斯方块
2018/06/26 Python
pandas 将list切分后存入DataFrame中的实例
2018/07/03 Python
Python实现定期检查源目录与备份目录的差异并进行备份功能示例
2019/02/27 Python
基于Python检测动态物体颜色过程解析
2019/12/04 Python
python 浮点数四舍五入需要注意的地方
2020/08/18 Python
Python如何使用vars返回对象的属性列表
2020/10/17 Python
美国高街时尚品牌:OASAP
2016/07/24 全球购物
苹果Mac升级:MacSales.com
2017/11/20 全球购物
Lookfantastic希腊官网:英国知名美妆购物网站
2018/09/15 全球购物
什么是动态端口(Dynamic Ports)?动态端口的范围是多少?
2014/12/12 面试题
家居装修公司创业计划书范文
2014/03/20 职场文书
大学生交通专业求职信
2014/09/01 职场文书
2015年感恩父亲节演讲稿
2015/03/19 职场文书
班主任寄语2016
2015/12/04 职场文书
基层医务人员三严三实心得体会
2016/01/05 职场文书
一年级下册数学教学反思
2016/02/16 职场文书
CSS3 实现的图片悬停的切换按钮
2021/04/13 HTML / CSS
解决MultipartFile.transferTo(dest) 报FileNotFoundExcep的问题
2021/07/01 Java/Android
实例详解Python的进程,线程和协程
2022/03/13 Python