如何在纯SQL中请求随机的3行(或尽可能接近真正的随机行)?

我这样尝试:-

select * from feedtable ORDER BY RAND() DESC LIMIT 3


但是有些时候给我看重复的行,而有些时候给我看2行而不是3行。

为什么!

最佳答案

这是一个查询,您可以使用该查询从结果集中删除重复项:

SELECT col1, col2
FROM feedtable
GROUP BY (col1, col2);
ORDER BY RAND() DESC
LIMIT 3


假定您只有两列,这可能是不正确的,但是您可以将feedtable中的所有列名添加到上述查询中。

关于mysql - 如何在SQL中请求随机的3行?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29370139/

10-10 23:54