实验四
声明:所有SQL语句均在实验平台验证通过,实验细节可能随时间推移老师会进行修改。在此仅提供解答思路,毕竟我的方法肯定不是最优,而且实验平台有查重功能,不要一昧的复制哦!
1.使用alter table语句为表增加列:“总成绩:sum_score”。
使用update语句,利用pub.student_course、pub.course,统计“总成绩”。
create table test4_01 as select * from pub.student_41;
alter table test4_01 add sum_score int;
update test4_01 a
set (sum_score) =
(select sum(b.score) sum_score from pub.student_course b where b.sid = a.sid
);
2.使用alter table语句为表增加列“平均成绩:avg_score”(小数点后保留1位)。
利用pub.student_course、pub.course,统计“平均成绩”,四舍五入到小数点后1位。
create table test4_02 as select * from pub.student_41;
alter table test4_02 add avg_score decimal(5,1);
update test4_02 a
set (avg_score) =
(select avg(b.score) avg_score from pub.student_course b where b.sid = a.sid
);
3.使用alter table语句为表增加列:“总学分:sum_credit”。
使用update语句,利用pub.student_course、pub.course,统计 “总学分”。
需要注意:成绩及格才能够计算所得学分,一门课多个成绩都及格只计一次学分。
create ta