SQL输出错误

时间:2013-03-11 22:32:31

标签: sql select

我使用以下查询:

1 个答案:

答案 0 :(得分:2)

由于未提供样本数据,因此未完全测试以下查询。

SELECT  d.LecturerID, d.Name,
        c.CourseID, c.CourseName,
        a.Semester,
        a.percentageOfStudent
FROM
        (
            SELECT  CourseID,
                    Semester,
                    SUM(CASE WHEN grade >= 6 THEN 1 ELSE 0 END) * 1.0 / COUNT(*) * 100.0 percentageOfStudent
            FROM    Exam
            GROUP   BY CourseID, Semester
            HAVING  SUM(CASE WHEN grade >= 6 THEN 1 ELSE 0 END) * 1.0 / COUNT(*) * 100.0 < 50
        ) a 
        INNER JOIN Lecture b
            ON  a.CourseID = b.CourseID AND
                a.Semester = b.Semester
        INNER JOIN Course c
            ON  b.CourseID = c.CourseID
        INNER JOIN  Lecturer d
            ON b.LecturerID = d.LecturerID