PHP实现在数据库百万条数据中随机获取20条记录的方法

转载  2017-04-19   作者:风来了-   我要评论

这篇文章主要介绍了PHP实现在数据库百万条数据中随机获取20条记录的方法,涉及php简单数据库查询与随机数操作相关技巧,需要的朋友可以参考下

本文实例讲述了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;
}

当然还有其他随机方法,如:http://www.jb51.net/article/18299.htm

PS:这里再为大家提供一款功能类似的在线工具供大家参考:

在线随机数字/字符串生成工具:
http://tools.jb51.net/aideddesign/suijishu

高强度密码生成器:
http://tools.jb51.net/password/CreateStrongPassword

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php排序算法总结》、《PHP常用遍历算法与技巧总结》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

  • 在WordPress中获取数据库字段内容和添加主题设置菜单

    在WordPress中获取数据库字段内容和添加主题设置菜单

    这篇文章主要介绍了在WordPress中获取数据库字段内容和添加主题设置菜单的方法,分别讲解了get_option()函数和add_theme_page()函数的用法,需要的朋友可以参考下
    2016-01-01
  • php动态生成JavaScript代码

    php动态生成JavaScript代码

    生成javascript的实现代码
    2009-03-03
  • php中array_column函数简单实现方法

    php中array_column函数简单实现方法

    这篇文章主要介绍了php中array_column函数简单实现方法,结合实例形式简单分析了array_column函数的功能,并针对低版本的情况给出了array_column函数的实现代码,需要的朋友可以参考下
    2016-07-07
  • php实现可逆加密的方法

    php实现可逆加密的方法

    这篇文章主要介绍了php实现可逆加密的方法,借鉴了discuz的加密原理实现通过密钥进行可逆加密的功能,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-08-08
  • PHP 缓存实现代码及详细注释

    PHP 缓存实现代码及详细注释

    PHP缓存实现,实现了apc和文件缓存,继承Cache_Abstract即可实现调用第三方的缓存工具。参考shindig的缓存类和apc。
    2010-05-05
  • PHP 分页原理分析,大家可以看看

    PHP 分页原理分析,大家可以看看

    分页显示是一种非常常见的浏览和显示大量数据的方法,属于web编程中最常处理的事件之一。
    2009-12-12
  • PHP中explode函数和split函数的区别小结

    PHP中explode函数和split函数的区别小结

    相信大家都知道,explode和split在php中都是可以通过特定字符把字符串转换成数组的,那么explode和split既然是一样的为什么会有两个函数呢,那么explode和split的区别在哪里呢,下面跟着小编我们一起来看看。
    2016-08-08
  • PHP Socket 编程

    PHP Socket 编程

    让我们以一个简单的例子开始---一个接收输入字符串,处理并返回这个字符串到客户端的TCP服务.
    2010-04-04
  • php 在文件指定行插入数据的代码

    php 在文件指定行插入数据的代码

    对于php文件操作那么关于在指定的位置插入数据就比较复杂了,下面我们就来看看关系在文件指定行插入数据实例吧。
    2010-05-05
  • php 防止单引号,双引号在接受页面转义

    php 防止单引号,双引号在接受页面转义

    在使用php的过程中,我们需要使用单引号和双引号,所以需要转义一下
    2008-07-07

最新评论