这篇文章主要为大家展示了“PHP如何实现在数据库百万条数据中随机获取20条记录”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“PHP如何实现在数据库百万条数据中随机获取20条记录”这篇文章吧。
站在用户的角度思考问题,与客户深入沟通,找到阿克塞哈萨克族自治网站设计与阿克塞哈萨克族自治网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站制作、做网站、企业官网、英文网站、手机端网站、网站推广、域名申请、虚拟主机、企业邮箱。业务覆盖阿克塞哈萨克族自治地区。本文实例讲述了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; }
以上是“PHP如何实现在数据库百万条数据中随机获取20条记录”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!