MySQL 中随机获取数据

Posted 牧之君

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 中随机获取数据相关的知识,希望对你有一定的参考价值。

由于需要大概研究了一下mysql的随机抽取实现方法。

目前采用的方法:

  

SELECT
    *
FROM
    tablename
ORDER BY
    RAND()
LIMIT 1

实现原理:

  通过ORDER BY RAND()来打乱数据的排序,LIMIT 来限制获取数据的条数。

缺点:

  效率低。在进行大数据量检索时,会增加检索时间。一个15万余条的库,查询5条数据,居然要8秒以上。

  官方手册说明,rand()放在ORDER BY 子句中会被执行多次,自然效率很低。

以上是关于MySQL 中随机获取数据的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 中随机获取数据

MySQL随机获取数据的方法,支持大数据量

随机记录 Mysql PHP

使用sql语句在mysql的表中随机获取数据

随机获取10条数据的方法

linux中怎么查看mysql数据库版本