PHP教程

thinkphp|php|mysql随机取10条数据

本文主要是介绍thinkphp|php|mysql随机取10条数据,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

网上找了很多都不是很好用,而且不自由,都是同一个封装方法复制来复制去的

这里,我收集了几个方法还算自由

sql实现

SELECT * FROM T_USER ORDER BY RAND() LIMIT 10

直接用order by rand()肯定是性能不高

这种要很好多
select * from articles where id>=(select floor(rand() * (select max(id) from articles))) order by id limit 10

说明:
rand函数返回0,1的随机数,然后再乘上表中的最大id,再向下取整,最后用id大于或等于这个数再order by排序,再用limit限制一下,可以高效地查出来。

php程序实现

实现原理就是先得到最大的id值,然后再随机生成5个随机id数组再通过

in查询即可

这篇关于thinkphp|php|mysql随机取10条数据的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!