2015-01-14 41 views
2

我在這裏遇到一個問題: 我正在製作一個隨機的在線問卷系統,用戶可以從0到5開始選擇難度級別。這裏是Free anime streaming apps用難度降序排列隨機問題行

我的問題表中有大約16k條記錄,每個問題的難度級別從0到5. 現在我需要的是從用戶選擇難度級別的16k記錄中獲得10個隨機問題。

SELECT question,id from questions where difficulty = '5' 

,這是工作正常,但有當有在這種情況下,難度5.小於10的問題,我需要選擇有難度4別人的質疑,如果再有困難的水平沒有問題的情況4,那麼它必須檢索難度等級爲3的問題,等等,以使用戶可以看到10個問題。

我該怎麼辦?我需要一個SQL查詢! 謝謝

回答

4
SELECT question,id 
from questions 
order by difficulty = 5 desc, 
     difficulty desc, 
     rand() 
limit 10 
+1

您可能必須從查詢中刪除'where難度='5''。它將只檢索「難度='5''的行。 – Wanderer

+1

絕對如此。謝謝。 –

+0

HEllo @juergend此查詢運行良好,但它不檢索難度級別爲5的行。 – EpicNeer