0
我做了一個查詢,顯示每個用戶對每個部門的回答數量以及每個用戶回答該部門問題時的正確和不正確的百分比。如何計算單個查詢中每個用戶的百分比?
於是,我嘗試這樣的查詢,
SELECT d.department_id, d.department_name as department,
a.username, COUNT(a.username)total,
( (COUNT(r.is_correct)*100)/
( SELECT COUNT(a.username) total
FROM qa_report r
LEFT JOIN tbl_user a ON (r.user_id = a.admin_id)
LEFT JOIN department d on (a.department_id = d.department_id)
WHERE d.department_name = 'Dept1' AND is_correct='yes'
)
) as correct_percent
FROM qa_report r
LEFT JOIN tbl_user a ON (r.user_id = a.admin_id)
LEFT JOIN department d on (a.department_id = d.department_id)
WHERE d.department_name = 'Dept1'
GROUP BY a.username
這是結果,
total
列是問題的答案是用戶回答該部門的數量。
在這total
,正確和不正確的答案是混合。
但是當我嘗試計算每個部門的正確/不正確的百分比時,correct_percent
列仍然是錯誤的。
的問題是在這條線,
( (COUNT(r.is_correct)*100)/
( SELECT COUNT(a.username) total
FROM qa_report r
LEFT JOIN tbl_user a ON (r.user_id = a.admin_id)
LEFT JOIN department d on (a.department_id = d.department_id)
WHERE d.department_name = 'Dept1' AND is_correct='yes'
)
) as correct_percent
我需要像這樣的地方,讓每一個用戶的正確的百分比,
(correct percent of answer*100)/total question that user answer eg. John => total: 10, correct 5, incorrect 5, correct %=50%
任何建議,我非常感激。
請發表所有相關的表格結構。 – 1000111
謝謝,現在我可以解決它。 – Cloud