在MySQL Workbench或命令行环境下,创建学生成绩汇总视图score_group_view,提供每位学生考试成绩最高的选课信息,要求显示的视图字段包括学生学号(s_no)、姓名(s_name)、课程号(c_no)、课程名(c_name)、考试成绩(total_score)。其中,总成绩按照——平时成绩平时成绩比重+考试成绩(1-平时成绩比重)公式计算。
3条回答 默认 最新
关注 以下是在MySQL Workbench或命令行环境下创建学生成绩汇总视图score_group_view的步骤:
- 首先,在MySQL Workbench或命令行环境下连接到数据库,并选择要创建视图的数据库。
- 接着,使用以下SQL语句创建视图:
CREATE VIEW score_group_view AS SELECT s.s_no, s.s_name, sc.c_no, c.c_name, ((sc.usual_score * c.usual_percentage) + (sc.exam_score * (1 - c.usual_percentage))) AS total_score FROM student s, score sc, course c WHERE s.s_no = sc.s_no AND sc.c_no = c.c_no AND (sc.c_no, sc.s_no, ((sc.usual_score * c.usual_percentage) + (sc.exam_score * (1 - c.usual_percentage)))) IN (SELECT sc1.c_no, sc1.s_no, MAX((sc1.usual_score * c1.usual_percentage) + (sc1.exam_score * (1 - c1.usual_percentage))) FROM score sc1, course c1 WHERE sc1.c_no = c1.c_no GROUP BY sc1.c_no, sc1.s_no);
- 上述SQL语句中,我们通过联结三个表student、score和course来获取学生成绩的详细信息,并使用公式计算每位学生的总成绩。其中,MAX函数用于获取每位学生考试成绩最高的选课信息,GROUP BY子句用于按课程和学生分组聚合数据。
- 最后,我们将上述查询结果保存为名为score_group_view的视图。该视图包含学生学号(s_no)、姓名(s_name)、课程号(c_no)、课程名(c_name)、考试成绩(total_score)等字段,满足要求。
以上是在MySQL Workbench或命令行环境下创建学生成绩汇总视图score_group_view的详细步骤和相关SQL语句,希望对您有帮助。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 AT89C51控制8位八段数码管显示时钟。
- ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
- ¥15 下图接收小电路,谁知道原理
- ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
- ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
- ¥15 手机接入宽带网线,如何释放宽带全部速度
- ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
- ¥15 ETLCloud 处理json多层级问题
- ¥15 matlab中使用gurobi时报错
- ¥15 这个主板怎么能扩出一两个sata口