mysql - 如何在 SQL 中请求随机 3 行?

标签 mysql sql

我如何在纯 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/

相关文章:

php - mysql 数据库连接

sql - 如何在查询中不使用不同的情况下获得相同的结果

mysql - mysql BETWEEN OPERATOR 和 microsoft sql (MDB) BETWEEN OPERATOR 有什么区别

mysql - SQL:我找不到此查询中的错误

mysql - 使用结构化标准和自由文本关键字/短语的组合进行搜索 - NOSQL vs Lucene/Sphinx

java - 删除数据库中没有的单词

php - Mysql查询: filter with condition

MySql查询查找不在时间范围之间的记录

php - 保存在下拉列表的数据库值中

php - 多次上传的标题未保存到数据库