在一个表中平均不同的值?

时间:2013-03-14 22:11:54

标签: sql distinct average

我有一张列出大学课程代码和成绩的表格。一些程序代码是相同的。我想平均每个不同项目的成绩。我该怎么办呢?到目前为止我的代码刚刚把我带到了这张桌子上,但是我无法看到我如何在这张桌子上操作?

SELECT s.program_code, 
       r.grade 
FROM   students s 
       INNER JOIN (SELECT e.student_id, 
                          e.module_code, 
                          IF( c.grade IS NULL, e.grade, (e.grade + c.grade)/2 ) AS grade 
                   FROM   exams e 
                          LEFT OUTER JOIN continuous_assessments c 
                                       ON e.student_id = c.student_id 
                                          AND e.module_code = c.module_code) r 
               ON s.student_id = r.student_id; 

1 个答案:

答案 0 :(得分:0)

这样的事情可能会起作用

select program_code, avg(e.grade + grade)
from blah blah
group by program_code