0
我想查询我的数据库,以随机顺序返回,例如,前16位有序结果(按字段排序)。MySQL:以随机顺序返回top 16结果
我可以轻松地通过使用php来调整PHP将使用的数组来调整返回(并排序)的16个结果。我想知道是否有一种简单的方法直接在查询中完成此操作。
我想查询我的数据库,以随机顺序返回,例如,前16位有序结果(按字段排序)。MySQL:以随机顺序返回top 16结果
我可以轻松地通过使用php来调整PHP将使用的数组来调整返回(并排序)的16个结果。我想知道是否有一种简单的方法直接在查询中完成此操作。
尝试
select * from
(
select * from your_table
order by rank
limit 16
) x
order by rand()
谢谢你的提示。 – 2012-08-11 03:00:30
不会总是根据查询使用的索引返回相同的16个结果吗? – 2012-08-11 03:01:14
@AdrianCornish:OP希望排名前16位的值(通过'rank'),然后洗牌,这个解决方案就是这么做的。 – 2012-08-11 03:02:49