选课系统,统计一个学生总共选了多少学分
已选课程表info_selected
字段 类型
stu_id varchar(50)
course_idint(11)
学生表info_student
字段类型整理属性Null默认额外操作
idvarchar(50)gb2312_chinese_ci否
namevarchar(20)gb2312_chinese_ci否
deptvarchar(40)gb2312_chinese_ci否
majorvarchar(40)gb2312_chinese_ci否
sexchar(4)gb2312_chinese_ci否
classvarchar(20)gb2312_chinese_ci否
passwordvarchar(50)gb2312_chinese_ci否e10adc3949ba59abbe56e057f20f883e
课程表info_course
字段类型整理属性Null默认额外操作
idint(5)否auto_increment
novarchar(50)gb2312_chinese_ci否
namevarchar(50)gb2312_chinese_ci否
teacher_idvarchar(50)gb2312_chinese_ci否
teacher_namevarchar(50)gb2312_chinese_ci否
selectedManint(11)是0
capacityint(11)是NULL
timevarchar(50)gb2312_chinese_ci是NULL
placevarchar(50)gb2312_chinese_ci是NULL
creditfloat是NULL
统计一个学生总共选了多少学分
请高手指点这个语句该怎么写?
[解决办法]
- SQL code
select y.stuid,sum(a.credit) from 课程表 a,学生表 s,已选课程 y where y.course_id=a.id group by y.stu_id
[解决办法]
2楼的少了一个关联
- SQL code
select a.name,sum(b.credit) from 学生表 a,课程表 b,选课表 cwhere a.id = c.stu_id and b.id = c.course_id group by c.stu_id