如何随机查询mysql中排序的内容?

时间:2015-06-09 10:50:06

标签: mysql

我正在尝试使用mysql查询来检索ramdon行但是按特定顺序。

例如,我有一个包含10000个名字的表,并希望以alfabetical顺序获取10个随机名称。

如果我使用rand()的命令并限制在一起,我可以有ramodon行,但不是按顺序。而且我也看到不可能通过rand命令使用rand命令。

现在,我正在检索ramdom行并对数组进行排序,但我想在我的查询中执行此操作。有可能的?我在哪里可以找到关于此的好消息?我在mysql.com上阅读但没有找到解决方案。非常感谢(抱歉我的英语很差)。

3 个答案:

答案 0 :(得分:0)

您可以使用其他嵌套查询进行排序:

SELECT   name 
FROM     (SELECT   name
          FROM     mytable
          ORDER BY RAND()
          LIMIT    10) t 
ORDER BY name ASC;

答案 1 :(得分:0)

像这样

select randed.name 
from (select name 
      from user 
      order by rand() 
      limit 3
     ) randed 
order by randed.name

答案 2 :(得分:0)

使用此:

SELECT *
FROM (
    SELECT *
    FROM yourTable
    ORDER BY RAND()
    LIMIT 10) DT
ORDER BY
    Name