0
我运行一个流行的开源LMS所谓的Moodle其背后都有一个MySQL数据库。我已经写了返回和我们所有的员工的列表,他们的成绩的9门必修课总称为IT策略课程功能查询。这个想法是,如果他们有一个900,我知道他们已经通过了所有9,700意味着他们已经完成了7,等等。以下是该查询。如何计算SUM的结果在MySQL
SELECT u.firstname AS 'First' , u.lastname AS 'Last', cc.name AS 'Category',
ROUND(SUM(gg.finalgrade),0) AS Grade
FROM prefix_course AS c
JOIN prefix_context AS ctx ON c.id = ctx.instanceid
JOIN prefix_role_assignments AS ra ON ra.contextid = ctx.id
JOIN prefix_user AS u ON u.id = ra.userid
JOIN prefix_grade_grades AS gg ON
JOIN prefix_grade_items AS gi ON gi.id = gg.itemid
JOIN prefix_course_categories AS cc ON cc.id = c.category
WHERE gi.courseid = c.id AND cc.name = 'IT Policies' AND gi.itemtype = 'course'
GROUP BY u.lastname,u.firstname
ORDER BY grade
我的问题是这样的。我想要一个总结报告,记录每个得分有多少人。例如102人有900 7人具有800,14人有700 0人有一个600,...,72人没有分数在所有等
此查询不除了得分和有多少人得分以外,还需要显示任何内容。我已经为此工作了几天,并采取了一些方法。尽管我似乎无法做到。任何帮助将非常感激!
谢谢你, Harvy
呃,这不是您的查询。但无论如何,为什么“900” =“过去了9”,而不是,比方说,“9”? – Strawberry