2017-03-15 64 views
1

我想隨機選擇我的表中前5行。比如我有一個一千行的表,現在我想選擇第1行至第5行,但不是在上升,但隨機在mysql數據庫表中隨機選擇前5行

$query = mysqli_query($con, "SELECT * FROM table LIMIT 5 ORDER BTW RAND()") ; 

但我總是得到一個錯誤。請任何人有更好的主意

+2

什麼是錯誤訊息?預設的「順便說一句」(這是什麼)與' – Jens

+2

'是'ORDER BY',並且限制範圍始終在最後 – Girish

+0

@Jens錯誤是由於我在使用LIMIT之前ORDER BY – user7713452

回答

0

試試這個方法。

SELECT column FROM table 
ORDER BY RAND() 
LIMIT 5 
+0

我不想從所有行中隨機選擇並選擇5行,我想選擇前5行並隨機化它們 – user7713452

+0

@ user7713452,前5行的基數是什麼? – Girish

+0

@Girish例如,我的查詢中的前5行現在具有2,5,7,8和9的ID,現在當我在while循環中運行它並回顯ID時,我希望它隨機回顯 – user7713452

0

您可以通過子查詢爲此,在子查詢中篩選所需的數據,並通過主查詢洗牌

SELECT * FROM (SELECT * FROM table LIMIT 5) _t ORDER BY RAND()