PHP如何实现在数据库随机获取几条记录

Posted haohuier

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP如何实现在数据库随机获取几条记录相关的知识,希望对你有一定的参考价值。

本文实例讲述了php实现在数据库百万条数据中随机获取20条记录的方法。PHP实例分享给大家供大家参考,具体如下:

为什么要写这个?

在去某个公司面试时,让写个算法出来,当时就蒙了,我开发过程中用到算法的吗?又不是大数据开发,分析。

今天偶然想起来一个坑爹数据,如:PHP取百万条数据中随机20条记录,当时就用的算法。

1.先统计统计数据库多少条记录(这个做个数据缓存,如1小时重新统计一次),

2.根据总条数,随机1次,1次性取出20条记录(当然这个就相当于分页了,要求不高的话,这个最快,我用的就是这个);

还有一种方法,随机20次,重复执行20次。

例如:

1         $sum=800000;//得到总条数 
2         //循环取数据 
3         for($i=1;$i<=20;$i++){ 
4           $offset=mt_rand(1,$sum); 
5           //控制重复对比的,请自行实现 
6           //数据库取数据的,请自行实现 
7           $sql="select * from table limit $offset,1"; 
8           echo$sql; 
9         } 

 















以上是关于PHP如何实现在数据库随机获取几条记录的主要内容,如果未能解决你的问题,请参考以下文章

mysql随机查询符合条件的几条记录

thinkphp3.1怎么随机取数据库中几条记录

mysql实现随机获取几条数据的方法

mysql实现随机获取几条数据的方法

数据库取中间几条记录

sql查询 如何获取查找某ID的一条记录在表中是第几条记录