山东大学数据库系统实验四

这篇博客详细记录了山东大学数据库系统实验四的内容,包括使用ALTER TABLE和UPDATE语句增加和更新表列,如总成绩、平均成绩、总学分等,以及数据的规范化处理,如去除空格、修复性别和班级列的不规范数据,并根据出生日期计算年龄。博主强调了逻辑判断和错误数据查找的重要性,并分享了个人学习资源和联系方式。
摘要由CSDN通过智能技术生成

实验四

声明:所有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
  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值