本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。php mysql怎么随机获取几条数据?Mysql实现随机获取几条数据的方法sql语句有几种写法:SELECT * FROM tablename ORDER B
本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。
php mysql怎么随机获取几条数据?
Mysql实现随机获取几条数据的方法
sql语句有几种写法:
SELECT * FROM tablename ORDER BY RAND() LIMIT 想要获取的数据条数;
SELECT *FROM `table` WHERE id >= (SELECT FLOOR( MAX(id) * RAND()) FROM `table` ) ORDER BY id LIMIT 想要获取的数据条数;
SELECT * FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * (SELECT MAX(id) FROM `table`)) AS id) AS t2 WHERE t1.id >= t2.id
ORDER BY t1.id ASC LIMIT 想要获取的数据条数;
SELECT * FROM `table`WHERE id >= (SELECT floor(RAND() * (SELECT MAX(id) FROM `table`))) ORDER BY id LIMIT 想要获取的数据条数;
SELECT * FROM `table` WHERE id >= (SELECT floor( RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`)) + (SELECT MIN(id) FROM `table`))) ORDER BY id LIMIT 想要获取的数据条数;
SELECT * FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`))+(SELECT MIN(id) FROM `table`)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 想要获取的数据条数;
反馈:
实测 38万数据,随机取10条 1 可以随机取值,执行时间1-2秒。 2 运行超过20秒没反应,试了3次。 3 取的10条数据是连续的ID,执行0.001秒。 4 随机取10条,id在1-4000之间,执行0.003秒,试了10次以上。 5 随机取10条,id在1-4000之间,执行0.003秒,试了10次以上。 6 取的10条数据是连续的ID,执行0.001秒。
--结束END--
本文标题: php mysql怎么随机获取几条数据
本文链接: https://www.lsjlt.com/news/1032.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-04-23
2024-04-23
2024-04-23
2024-04-23
2024-04-23
2024-04-23
2024-04-23
2024-04-23
2024-04-23
2024-04-23
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0