我有四张表
student表
字段如下:
stu_id
stu_name
... course课程表
字段如下:
course_id
course_name
... Score表
字段如下:
course_id,
stu_id,
score,(int)
...
Score_Status表
字段如下:
stu_id,
total_score(int),
score_status,(char(1) Y:及格,N:不及格),
...
1.现要把单个学生的各科成绩求和并插入到Score_Status表中。(总分/科目总数)如果大于 60 算及格。否则不及格?
2.我写了一个类似总是报错。
select m.c_name, Count(s.Score) as total
if total/3 >= 60
begin
insert into Score(Score_Status)values('Y')
end
else
begin
insert into Score(Score_Status)values('N')
end
from mytest m left join Score s on m.p_code =s.p_code left join Course c on c.CourseID=s.CourseID group by m.c_name ;
错误信息为:from 附近有语法错误,但是我把判断这块注释后就能正常显示数据。请问错在哪里?
student表
字段如下:
stu_id
stu_name
... course课程表
字段如下:
course_id
course_name
... Score表
字段如下:
course_id,
stu_id,
score,(int)
...
Score_Status表
字段如下:
stu_id,
total_score(int),
score_status,(char(1) Y:及格,N:不及格),
...
1.现要把单个学生的各科成绩求和并插入到Score_Status表中。(总分/科目总数)如果大于 60 算及格。否则不及格?
2.我写了一个类似总是报错。
select m.c_name, Count(s.Score) as total
if total/3 >= 60
begin
insert into Score(Score_Status)values('Y')
end
else
begin
insert into Score(Score_Status)values('N')
end
from mytest m left join Score s on m.p_code =s.p_code left join Course c on c.CourseID=s.CourseID group by m.c_name ;
错误信息为:from 附近有语法错误,但是我把判断这块注释后就能正常显示数据。请问错在哪里?
select stu_id,sum(score),case when sum(score)/count(1)>=60 then 'Y' else 'N' end
from score
group by stu_id;