在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 WPF动态创建页面内容
- ¥15 如何对TBSS的结果进行统计学的分析已完成置换检验,如何在最终的TBSS输出结果提取除具体值及如何做进一步相关性分析
- ¥15 SQL数据库操作问题
- ¥100 关于lm339比较电路出现的问题
- ¥15 Matlab安装yalmip和cplex功能安装失败
- ¥15 加装宝马安卓中控改变开机画面
- ¥15 STK安装问题问问大家,这种情况应该怎么办
- ¥15 关于罗技鼠标宏lua文件的问题
- ¥15 halcon ocr mlp 识别问题
- ¥15 已知曲线满足正余弦函数,根据其峰值,还原出整条曲线