gpt4 book ai didi

MySQL从600K行中快速选择10个随机行

转载 作者:行者123 更新时间:2023-11-29 22:15:38 25 4
gpt4 key购买 nike

如何最好地编写一个查询,从总共 600k 行中随机选择 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 列表中可以存在间隙。请参阅文章以获取更高级的示例

关于MySQL从600K行中快速选择10个随机行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31228381/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com