Z360124 2023-04-21 21:37 采纳率: 44.4%
浏览 27
已结题

如何在MySQL Workbench或命令行环境下?

在MySQL Workbench或命令行环境下,创建学生成绩汇总视图score_group_view,提供每位学生考试成绩最高的选课信息,要求显示的视图字段包括学生学号(s_no)、姓名(s_name)、课程号(c_no)、课程名(c_name)、考试成绩(total_score)。其中,总成绩按照——平时成绩平时成绩比重+考试成绩(1-平时成绩比重)公式计算。

  • 写回答

3条回答 默认 最新

  • 琉底骅网络 海口龙华琉底骅网络科技工作室官方账号 2023-04-21 22:13
    关注

    以下是在MySQL Workbench或命令行环境下创建学生成绩汇总视图score_group_view的步骤:

    1. 首先,在MySQL Workbench或命令行环境下连接到数据库,并选择要创建视图的数据库。
    2. 接着,使用以下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);
    
    
    1. 上述SQL语句中,我们通过联结三个表student、score和course来获取学生成绩的详细信息,并使用公式计算每位学生的总成绩。其中,MAX函数用于获取每位学生考试成绩最高的选课信息,GROUP BY子句用于按课程和学生分组聚合数据。
    2. 最后,我们将上述查询结果保存为名为score_group_view的视图。该视图包含学生学号(s_no)、姓名(s_name)、课程号(c_no)、课程名(c_name)、考试成绩(total_score)等字段,满足要求。

    以上是在MySQL Workbench或命令行环境下创建学生成绩汇总视图score_group_view的详细步骤和相关SQL语句,希望对您有帮助。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月1日
  • 已采纳回答 4月23日
  • 创建了问题 4月21日

悬赏问题

  • ¥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口