用sql语言编写,按照目前湖工大的成绩管理情况,设计成绩管理系统。要求系统可以存储学生基本信息,和课程基本信息,学生选课情况以及课程得分(考试后进行补录)。课程有必修,选修和公选不同类型。各学院学生只能选修该专业的选修课。公选课可以大范围选修。且补考,重修成绩要单独对待。可以根据学分统计发放学位信息。并提供学位信息查询(包括已经发放的学位证查询,以及没有发放的学位,要显示该生还需多少学分,什么类型课程多少学分等提示。)策略分析题目:1)按照学生学号,查询该生所有的课程选择及得分情况,并进行平均分,绩点计算。显示该生三类课程的门数和平均分。(必修,选修和任选课),其中任选课程若不及格不计入。2)按照课程号,查询该课程所有学生的得分情况,并进行平均分,方差等计算。按照成绩进行排序。3)根据班号,统计该班学生的不及格的全部信息。,用sql语言写4)统计每个学院的平均绩点和排名 5)查询某一学期的学生选课情况和课程表 6)统计历年学位授予情况和学位授予率等

时间: 2024-03-14 16:47:17 浏览: 25
针对这个问题,我可以为您提供以下 SQL 语句来实现所需的功能: 1. 按照学生学号查询该生所有的课程选择及得分情况,并进行平均分、绩点计算,并显示该生三类课程的门数和平均分(必修、选修和任选课),其中任选课程若不及格不计入: ```sql SELECT student.student_id, student.student_name, AVG(course_selection.course_score) AS avg_score, SUM(CASE WHEN course.course_type = '必修课' THEN 1 ELSE 0 END) AS required_num, SUM(CASE WHEN course.course_type = '选修课' AND student.major = course.course_major THEN 1 ELSE 0 END) AS elective_num, SUM(CASE WHEN course.course_type = '公选课' THEN 1 ELSE 0 END) AS public_num FROM student LEFT JOIN course_selection ON student.student_id = course_selection.student_id LEFT JOIN course ON course_selection.course_id = course.course_id WHERE student.student_id = 'xxxxxx' AND (course_selection.course_score >= 60 OR course.course_type != '任选课') GROUP BY student.student_id, student.student_name; ``` 2. 按照课程号查询该课程所有学生的得分情况,并进行平均分、方差等计算,并按照成绩进行排序: ```sql SELECT course.course_id, course.course_name, AVG(course_selection.course_score) AS avg_score, VAR_POP(course_selection.course_score) AS variance FROM course LEFT JOIN course_selection ON course.course_id = course_selection.course_id WHERE course.course_id = 'xxxxxx' GROUP BY course.course_id, course.course_name ORDER BY course_selection.course_score DESC; ``` 3. 根据班号统计该班学生的不及格的全部信息: ```sql SELECT student.student_id, student.student_name, course.course_id, course.course_name, course_selection.course_score FROM student LEFT JOIN course_selection ON student.student_id = course_selection.student_id LEFT JOIN course ON course_selection.course_id = course.course_id WHERE student.class_id = 'xxxxxx' AND course_selection.course_score < 60; ``` 4. 统计每个学院的平均绩点和排名: ```sql SELECT student.college, AVG(course_selection.grade_point) AS avg_grade_point, RANK() OVER (PARTITION BY student.college ORDER BY AVG(course_selection.grade_point) DESC) AS rank FROM student LEFT JOIN course_selection ON student.student_id = course_selection.student_id GROUP BY student.college; ``` 5. 查询某一学期的学生选课情况和课程表: ```sql SELECT student.student_id, student.student_name, course_selection.course_id, course.course_name, course_selection.class_time FROM student LEFT JOIN course_selection ON student.student_id = course_selection.student_id LEFT JOIN course ON course_selection.course_id = course.course_id WHERE course_selection.semester = 'xxxxxx'; ``` 6. 统计历年学位授予情况和学位授予率等: ```sql SELECT student.degree_type, COUNT(*) AS degree_num, COUNT(*) / (SELECT COUNT(*) FROM student) AS degree_rate FROM student WHERE student.degree_type IS NOT NULL GROUP BY student.degree_type; ``` 总之,以上 SQL 语句可以帮助实现成绩管理系统中的常见功能,但具体实现还需要根据实际情况进行调整和完善。

相关推荐

最新推荐

recommend-type

学生成绩管理系统——数据库课程设计2.doc

本数据库设计是为简单的课程设计探讨 | 对数据库系统的设计初学者 简单 | 容易模仿 | 能提供作业思路 不需积分即可下载
recommend-type

基于Java+sql教师信息管理系统课设报告

基于Java+sql教师信息管理系统课设报告,教师信息管理系统主要用于实现用户名的登陆,退出,教师信息的添加,查找, 删除,修改等功能。本系统的开发需要实现以下功能模块:对系统的图形界面化进行 操作,对sql...
recommend-type

论坛管理信息系统数据库系统设计

1设计内容及要求 1.1作者信息模块 用来管理作者信息,包括作者昵称、贴子编号、性别、年龄、职业、爱好等; 1.2贴子信息模块 用来管理贴子信息,包括贴子编号、发贴日期、时间、等级等; 1.3回复日期模块 用来管理...
recommend-type

数据库课程设计:基于VB的学生成绩管理系统

利用VB6.0/SQL Server 2000设计一个学生成绩管理系统,该系统能够实现对学生信息、课程信息、成绩信息的管理和成绩的查询功能。
recommend-type

SQL Server课程设计报告-学生信息管理系统

项目名称: 学生信息管理系统 数据库构建与设计 姓 名: X X X 班 级: XX级计算机应用 一班 指导教师:_ X X 完成时间: 200X.X.X-200X.X.X 目 录 项目概述 1 一、学生信息管理系统数据库设计 2 1、...
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB正态分布协方差分析:揭示正态分布变量之间的协方差

![MATLAB正态分布协方差分析:揭示正态分布变量之间的协方差](https://site.cdn.mengte.online/official/2021/11/20211128213137293.png) # 1. 正态分布概述 正态分布,又称高斯分布,是统计学中最重要的连续概率分布之一。它广泛应用于自然科学、社会科学和工程领域。 正态分布的概率密度函数为: ``` f(x) = (1 / (σ√(2π))) * exp(-(x - μ)² / (2σ²)) ``` 其中: - μ:正态分布的均值 - σ:正态分布的标准差 - π:圆周率 正态分布具有以下特性: - 对称性:
recommend-type

我正在开发一款个人碳足迹计算app,如何撰写其需求分析文档,请给我一个范例

为了更全面、清晰地定义个人碳足迹计算app的需求,需求分析文档应该包含以下内容: 1.项目简介:对该app项目的概述及目标进行说明。 2.用户分析:包括目标用户群、用户需求、行为等。 3.功能需求:对app的基本功能进行定义,如用户登录、数据录入、数据统计等。 4.非功能需求:对使用app的性能和质量等进行定义,如界面设计、数据安全、可扩展性等。 5.运行环境:包括app的开发环境和使用环境。 下面是一个范例: 需求分析文档 1. 项目简介 该app项目旨在为用户提供一款方便、易用、可定制的个人碳足迹计算平台,以促进环保和可持续性发展。 2. 用户分析 目标用户群:全球关
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。