计算表中学生的 SGPA,公式为特定学生在特定学期注册的每门课程的 3*gradepoint 总和除以课程数。
我有一个名为 All_Registration 的表,其中包含如下字段和数据
╔════════════╦═════════════╦════════╦════════════╗
║ STUDENT_ID ║ SEMESTER ║ COURSE ║ GRADEPOINT ║
╠════════════╬═════════════╬════════╬════════════╣
║ i090170 ║ Fall 2000 ║ 200 ║ 3.67 ║
║ i090170 ║ Fall 2000 ║ 201 ║ 2.67 ║
║ i090170 ║ Fall 2000 ║ 203 ║ 2 ║
║ i090170 ║ Fall 2000 ║ 205 ║ 4 ║
║ i090170 ║ Fall 2000 ║ 209 ║ 3.67 ║
║ i090170 ║ Fall 2000 ║ 211 ║ 3 ║
║ i090170 ║ spring 2000 ║ 200 ║ 3.67 ║
║ i090170 ║ spring 2000 ║ 201 ║ 2.67 ║
║ i090170 ║ spring 2000 ║ 203 ║ 2 ║
║ i090170 ║ spring 2000 ║ 205 ║ 4 ║
║ i090170 ║ spring 2000 ║ 209 ║ 3.67 ║
╚════════════╩═════════════╩════════╩════════════╝
注意:学生可以在学期学习多门课程,即 5 或 6
我所做的是我计算了编号。学生在一个学期所修的课程
select abc
from
(
select Student_Id,Semester, count(distinct Courses) as abc
from All_Registration B
group by Student_Id,Semester
)A;
这将返回学生在一个学期中学习的不同课程的数量
现在我想计算SGPA。我想查询可以为每个学生的每个学期执行以下操作:
“所有课程的总和(一门课程的成绩点* 3))/该学生每学期的课程数量”