MySQL快速从60万行中选择10条随机行

MySQL快速从60万行中选择10条随机行,第1张

MySQL快速从60万行中选择10条随机行

一个出色的职位,可以处理多种情况,从简单到有缺口,再到有缺口的不均匀。

http://jan.kneschke.de/projects/mysql/order-by-
rand/

对于大多数一般情况,这是您的 *** 作方法:

SELECt name  FROM random AS r1 JOIN       (SELECt CEIL(RAND() *          (SELECT MAX(id)  FROM random)) AS id)        AS r2 WHERe r1.id >= r2.id ORDER BY r1.id ASC LIMIT 1

假定id的分布是相等的,并且id列表中可能存在间隙。请参阅文章以获取更多高级示例



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4900204.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存