如何从MySQL中获取ORDERED和有限行并随机化显示顺序

时间:2016-11-21 21:00:23

标签: php mysql

是否可行,以及如何向MySQL询问

SELECT * FROM my_table ORDER by row_id DESC LIMIT 8

从我的表中获取最后8条最新记录,随机顺序显示PHP方法

$results = $mysqli->query($query);
while($row = $results->fetch_assoc()) {
    echo $row['my_col_name'];
}

Colud I,以及rand()在我的SQL查询中的位置? 没有随机化我得到最后8行ORDERED 10,9,8,7,6,5,4,3

我希望按以下顺序排列:

9,7,5,4,6,10,3,8;

8,7,3,6,10,9,5,4 ...

2 个答案:

答案 0 :(得分:1)

使用子查询:

SELECT t.*
FROM (SELECT t.*
      FROM my_table t
      ORDER by row_id DESC
      LIMIT 8
     ) t
ORDER BY rand();

答案 1 :(得分:1)

您可以将其放在另一个选择中:

my_metric[30s]