码迷,mamicode.com
首页 > 数据库 > 详细

从MySQL随机选取数据方案

时间:2020-05-11 18:46:36      阅读:91      评论:0      收藏:0      [点我收藏+]

标签:and   mysq   sel   limit   方案   set   --   blog   new   

方案一: 利用mysql+应用实现
// 1,,计算总记录数
SELECT COUNT(*) AS `offset` FROM `sd_crowd_label_enum`
 
// 2, 利用应用计算随机开始角标
index = rand(xx)
 
// 3,批量获取
SELECT * FROM `sd_crowd_label_enum` LIMIT index, 10
 
方案二: mysql实现(前提是该表有自增id)
-- 子查询计算随机开始角标
SELECT FLOOR(RAND() * COUNT(*)) AS `offset` FROM `sd_crowd_label_enum`
 
-- 批量获取
SELECT * FROM `sd_crowd_label_enum` where id > (SELECT FLOOR(RAND() * COUNT(*)) AS `offset` FROM `sd_crowd_label_enum`) LIMIT 0, 100
 
 
方案三:mysql实现(利用数据更新字段实现)
SELECT * FROM `sd_crowd_label_enum` order by gmt_create LIMIT 0, 100
每次操作完,数据更新字段时间都会更新
 
参考:

从MySQL随机选取数据方案

标签:and   mysq   sel   limit   方案   set   --   blog   new   

原文地址:https://www.cnblogs.com/guihong/p/12870640.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!