我有一张表,其中包含一系列教师,他们正在教授的课程以及通过了多少学生以及有多少学生失败。
Teacher-ID Class Pass/Fail Count
-------------------------------------------------------
1 English Pass 15
1 English Fail 5
1 Math Pass 20
1 Math Fail 10
2 Science Pass 15
2 Science Fail 10
2 Spanish Pass 20
2 Spanish Fail 8
我想要做的是获得每个教师和班级组合中有多少学生失败的百分比。
Teacher-ID Class % Failed
-------------------------------------------------------
1 English 25%
1 Math 33%
2 Science 40%
2 Spanish 29%
我很难过如何使用SQL来做这件事。
答案 0 :(得分:2)
以下是您可以使用的查询:
SELECT
TeacherID,
Class,
SUM(CASE WHEN PassFail = 'Fail' THEN Count ELSE 0 END) * 100.0 /SUM(Count) as FailPersent
FROM tbl
GROUP BY TeacherID, Class