mysql计算学分绩点资源

2023年 8月 5日 58.3k 0

MySQL是一款广泛使用的关系型数据库管理系统,可以用于计算学分绩点。以下是关于MySQL计算学分绩点的详细步骤。

CREATE TABLE course (
name VARCHAR(20) NOT NULL PRIMARY KEY,
credit float DEFAULT 0.0
);
CREATE TABLE grade (
student_id VARCHAR(8) NOT NULL,
course_name VARCHAR(20) NOT NULL,
grade float NOT NULL,
PRIMARY KEY (student_id, course_name),
CONSTRAINT foreign_key_1 FOREIGN KEY (course_name) REFERENCES course(name) ON DELETE CASCADE
);
INSERT INTO course (`name`, `credit`) VALUES ('计算机网络', 4.0), ('数据库原理', 3.0), ('软件工程', 3.0);
INSERT INTO grade (`student_id`, `course_name`, `grade`) VALUES ('10001', '计算机网络', 87.5), ('10001', '数据库原理', 91.0), ('10001', '软件工程', 95.0), ('10002', '计算机网络', 78.0), ('10002', '数据库原理', 85.5), ('10002', '软件工程', 89.5);
SET @sum_course_credit = 0.0;
SET @sum_weighted = 0.0;
SELECT SUM(credit) INTO @sum_course_credit FROM course;
SELECT SUM(grade * credit) INTO @sum_weighted FROM grade INNER JOIN course ON grade.course_name = course.name;
SELECT @sum_weighted / @sum_course_credit AS `GPA`;

mysql计算学分绩点资源

以上代码创建了一个含有两个表格的数据库,分别是“course”和“grade”。表格“course”包含了所有课程的名称和学分。表格“grade”包含了每个学生在不同课程中获得的成绩。

接下来,使用INSERT语句向表格“course”和“grade”中插入数据。

最后,使用SELECT语句计算学分绩点。这里将学分绩点定义为所有课程加权平均分的平均值。计算学分绩点需要先计算出所有课程的学分总和,再计算出每门课程的成绩与学分的乘积之和。使用变量@sum_course_credit和@sum_weighted来存储计算结果,最后将@sum_weighted除以@sum_course_credit得到学分绩点。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论