从MySQL随机选取数据方案

方案一: 利用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随机选取数据方案

上一篇:mysql查询效率提高技巧


下一篇:Django settings.py 中设置访问 MySQL 数据库【一种是直接在 settings.py 文件中直接写数据库信息,另一种是读文件获取数据库信息】