mysql - 如何从mysql数据库中获取随机行数?

标签 mysql database

我在 mysql 数据库的某个表中有大约 300 条记录。我有一个要求,通过一次查询获取 40 条随机记录。如何编写查询? 需要帮忙 谢谢。

最佳答案

对于像你这样的小 table ,它应该足够了:

SELECT * FROM table ORDER BY RAND() LIMIT 40;

请注意,这不适用于大型表,因为由于使用了 ORDER BY RAND(),MySQL 必须进行表扫描并对表中的所有行进行排序。对于大型表,您必须主要在应用程序代码中实现这一点,跟踪您已经获得的行并生成随机 ID 以获取。

关于mysql - 如何从mysql数据库中获取随机行数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4003839/

相关文章:

MySQL 查询具有最近日期的行

java - 如何从 Netbeans、Java DB (Derby) 数据库导出表

database - pgbouncer-1.4如何与PostgreSQL -9.0数据库集成

database - 使用 neo4j 索引文件系统是否有意义

mysql - mysql中的双重插入选择语句

MYSQL查询同一个字段两个不同的id

mysql - 需要 Wordpress 数据库 SQL 查询帮助

php - 使用 select 形式更新 Mysql 中的数据

php - PDO 数组中的重复值

mysql - 仅使用 SQL 使 "priority"数字在数据库表中唯一