我一直在做一個測驗,測驗的核心是完成...我現在需要的是這樣的:我如何做一個測驗前5錯誤的答案?
我得到了用戶註冊,並在我的測驗中,當用戶在問題,他應該能夠看到有多少人回答了這個問題。
到目前爲止,我已經能夠檢查所有正確答案的用戶通過使用「問題」表加入了「答案」表...並檢查它這樣做...
什麼我希望能夠知道問題的錯誤答案的前5名......我得到了一個名爲'答案'的表格,並且我知道其中的question_id ...因此,如何找到錯誤的答案和然後找出哪些答案最多?
SELECT * FROM answers
WHERE question_id = 1
AND answer IN (
SELECT answer
FROM answers
GROUP BY answer
HAVING COUNT(*) >1
)
此查詢選擇表中最多的值。
我的問題是,我需要知道插入的每個不同值的數量(然後按最高數量排序)。說我的數據庫中的用戶回答'蛋糕和燻肉'123次然後將有123該答案在數據庫中的值...但我不希望所有行的值,我想要1行123值。
因爲我想做出錯誤答案的前5名,我希望它省略正確的答案。
對不起,這是非常混亂的解釋。希望你明白,謝謝你的閱讀!
最好的問候, 馬蒂亞斯
假設所有的問題都是「只選一個」而不是「選擇所有適用的」類型的答案,那麼修改你的內部查詢以排除正確的答案。 –
如果您可以向我們展示您的數據庫佈局(對於這兩個表),會很酷。也許對你沒有提及的專欄有一個完全不同的說法。 – Aufziehvogel
您正在使用哪種SQL(Oracle,SQLServer,MySQL等)? –