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