mysql随机获取指定数量数据

 通常情况下我们在开发项目中一般会用到 随机推荐 或者 购买类 需求,一般情况下很多程序猿都是 正序 或者 倒叙 获取 然后随机返回给前端,这种方式有 很多缺陷

mysql随机获取指定数量数据

解决方案

 下面我们分享一种直接从 mysql 数据库中随机获取数据的一种方式。

编写最大id查询sql

SELECT MAX(id) FROM `user`

编写join

INNER JOIN ( SELECT ROUND( RAND( ) * ( ( SELECT MAX( id ) FROM `bl_user` ) ) ) AS id ) AS u2 ON u.id >=`u2`.`id` 

编写要获取的随机条数

LIMIT 50

完整实例

SELECT
    * 
FROM
    `user` `u`
    INNER JOIN ( SELECT ROUND( RAND( ) * ( ( SELECT MAX( id ) FROM `user` ) ) ) AS id ) AS u2 ON u.id >= `u2`.`id` 
    LIMIT 50

 以上sql主要实现了完全从随机位置取 指定条数 的记录来实现 随机 获取 mysql 表数据,有兴趣的同学可以测试一下.

给TA打赏
共{{data.count}}人
人已打赏
运维

计数限流算法

2024-11-22 11:59:52

运维

uinapp或者前端打包后出现两个静态资源文件夹解决方案

2024-11-22 11:59:54

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索