首页> 数据库> >Mysql 随机查询N条数据的正确方法

Mysql 随机查询N条数据的正确方法

时间:2023-06-28 浏览次数:1458
一、错误方法
直接 ORDER BY RAND()
SELECT * FROM ls_article ORDER BY RAND() LIMIT 4;
这种只适合表里只有少量数据情况下使用
一般情况下直接放弃吧

二、正确方法
SELECT MAX(id),MIN(id) INTO @A,@B FROM ls_article;
SET @C= FLOOR((@A-@B+1)*RAND() + @B);
SELECT * FROM ls_article WHERE id >= @C LIMIT 4;
只用三条语句
千万条数据耗时0点几秒

    十年网站建设

      建立本站初衷,是为了记录学习过程中掌握的方法,或者项目开发过程中遇到问题的解决方案,防止后面遇到同样的问题时却忘了当时的解决方法,以此有个地方回顾!

      需求合作:479083651@qq.com
      发送邮件请说明您的需求!

    阅读排行