【数据挖掘】国科大苏桂平老师数据库新技术课程作业 —— 第三次作业

news2024/11/20 9:36:58

part 1

设计一个学籍管理小系统。系统包含以下信息:

学号、学生姓名、性别、出生日、学生所在系名、学生所在系号、课程名、课程号、课程类型(必修、选修、任选)、学分、任课教师姓名、教师编号、教师职称、教师所属系名、系号、学生所选课程号、学生所选上课教师姓名、选课成绩。

两种不同表达方式的 E-R 图分别如图 1 1 1 和图 2 2 2 所示。

图 1    E-R 图(未注明了键、外键、类型等信息)

图 2    E-R 图(注明了键、外键、类型等信息)

part 2

完成在表上的操作 (用 SQL 的 SELECT 语句):

根据描述内容创建 student 表、course 表、department 表、selectcourse 表、teacher 表、teach 表,分别如图 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6 所示。

学号学生姓名性别出生日所在系号
0张三198706100
1李四198706101
2王五198706102
3赵六198706103
4李德198706104
5王和198706105
6田亮198706106
7周润发198706107
8刘德华198706108
9谢霆锋198706109
10邓超198706100
11刘翔198602141
12姚明198602142
13高峰198602143
14史冬鹏198602144
15郭晶晶198602145
16汤唯198602146
17范冰冰198602147
18李冰冰198602148
19赵本山198602149
20郭德纲198602140
21于谦198602141
22岳云鹏198708142
23姜昆198709053
24李金斗198709054
25刘青云198709055
26张靓颖198709056
27韩寒198709057
28李宇春198709058
29张静初198709059
30莫文蔚198709059

表 1    student 关系表

课程号课程名学分课程类型
0模式识别2讲授
1C++编程2讨论
2计算机视觉1讨论
3密码学3讲授
4数理分析2讨论
5英语3讲授
6声乐1讨论
7控制理论3讲授
8信号处理2讨论
9物理学3讲授
10化学分析1讨论
11遗传学3讲授
12数据结构3讲授
13通信工程2讲授
14随机数学3讲授
15日语2讲授
16美术1讨论
17解剖学1讨论
18有机化学1讨论
19材料学2讲授
20流体力学3讲授
21复变函数2讲授
22市场营销3讲授
23人力资源管理3讲授
24组织理论与设计2讨论
25证券投资学2讲授
26宏观经济学1讨论
27微观经济学2讲授
28管理学2讲授
29公司战略1讨论
30德语3讲授
31西班牙语2讲授

表 2    course 关系表

系号系名
0计算机系
1自动化系
2艺术系
3通信系
4外语系
5物理系
6化学系
7数学系
8生物系
9管理系

表 3    department 关系表

课程号学号教师编号选课成绩
00099
10199
21299
31399
42499
52599
63699
73799
84899
94999
105099
115199
126299
136388
147488
157588
168688
178788
189888
199988
2010088
2110188
2211288
2311388
2412488
2512588
2613688
2713777
2814877
2914977
3015077
3115177
016077
116177
217277
317377
418477
518577
619677
719777
820877
920966
1021066
1121166
1222266
1322366
1423466
1523566
1624666
1724766
1825866
1925966
2026066
2126166
2227266
2328366
2428466
2529566
2629666
2730766
2830855
2927955
3026055
3130155

表 4    selectcourse 关系表

教师编号教师姓名职称所在院系号
0牛根生教授0
1王石教授1
2马化腾副教授2
3周鸿祎副教授3
4马云教授4
5柳传志教授5
6史玉柱副教授6
7王建宙教授7
8李彦宏副教授8
9周小川教授9
10王健林教授0
11李开复教授1

表 5    teacher 关系表

教师编号课程号
00
11
22
33
44
55
66
77
88
99
010
111
212
313
414
515
616
717
818
919
020
121
222
323
424
525
626
727
828
929
030
131

表 6    teach 关系表

1. 查询所有学生所选的所有课程名、成绩

查询语句如下:

SELECT C.学生姓名, B.课程名, A.选课成绩 
FROM selectcourse AS A, course AS B, student AS C 
WHERE A.课程号=B.课程号 AND A.学号=C.学号

查询结果如表 7 7 7 所示:

学生姓名课程名选课成绩
张三模式识别99
汤唯模式识别77
张三C++编程99
汤唯C++编程77
李四计算机视觉99
范冰冰计算机视觉77
李四密码学99
范冰冰密码学77
王五数理分析99
李冰冰数理分析77
王五英语99
李冰冰英语77
赵六声乐99
赵本山声乐77
赵六控制理论99
赵本山控制理论77
李德信号处理99
郭德纲信号处理77
李德物理学99
郭德纲物理学66
王和化学分析99
于谦化学分析66
王和遗传学99
于谦遗传学66
田亮数据结构99
岳云鹏数据结构66
田亮通信工程88
岳云鹏通信工程66
周润发随机数学88
姜昆随机数学66
周润发日语88
姜昆日语66
刘德华美术88
李金斗美术66
刘德华解剖学88
李金斗解剖学66
谢霆锋有机化学88
刘青云有机化学66
谢霆锋材料学88
刘青云材料学66
邓超流体力学88
张靓颖流体力学66
邓超复变函数88
张靓颖复变函数66
刘翔市场营销88
韩寒市场营销66
刘翔人力资源管理88
李宇春人力资源管理66
姚明组织理论与设计88
李宇春组织理论与设计66
姚明证券投资学88
张静初证券投资学66
高峰宏观经济学88
张静初宏观经济学66
高峰微观经济学77
莫文蔚微观经济学66
史东鹏管理学77
莫文蔚管理学55
史东鹏公司战略77
韩寒公司战略55
郭晶晶德语77
张靓颖德语55
郭晶晶西班牙语77
莫文蔚西班牙语55

表 7    所有学生所选的所有课程名、成绩查询结果

2. 查询 somestucent 表中学生所选的所有课程名、成绩

somestudent 表给出学生名:

学生姓名
韩寒
李宇春
莫文蔚

表 8    somestudent 关系表

查询语句如下:

SELECT D.学生姓名, B.课程名, A.选课成绩 
FROM selectcourse AS A, course AS B, student AS C, somestudent AS D 
WHERE A.课程号=B.课程号 AND C.学生姓名=D.学生姓名 AND A.学号=C.学号

查询结果如表 9 9 9 所示:

学生姓名课程名选课成绩
韩寒市场营销66
李宇春人力资源管理66
李宇春组织理论与设计66
莫文蔚微观经济学66
莫文蔚管理学55
韩寒公司战略55
莫文蔚西班牙语55

表 9    somestucent 表中学生所选的所有课程名、成绩查询结果

3. 查询 somestudent 表中学生的累计学分(未及格的不算)

查询语句如下:

SELECT D.学生姓名, SUM(B.学分) AS '累计学分' 
FROM selectcourse AS A, course AS B, student AS C, somestudent AS D 
WHERE A.课程号=B.课程号 AND C.学生姓名=D.学生姓名 AND A.学号=C.学号 AND A.选课成绩 >= 60 
GROUP BY C.学号

查询结果如表 10 10 10 所示:

学生姓名累积学分
韩寒3
李宇春5
莫文蔚2

表 10    somestudent 表中学生的累计学分查询结果

4. 查询 somecourse 表中课程的平均成绩

somecourse 表给出课程名:

课程名
模式识别
数据结构
英语

表 11    somescourse 关系表

查询语句如下:

SELECT C.课程名, AVG(A.选课成绩) AS '课程平均成绩' 
FROM selectcourse AS A, course AS B, somecourse AS C
WHERE A.课程号=B.课程号 AND B.课程名=C.课程名
GROUP BY C.课程名

查询结果如表 12 12 12 所示:

课程名课程平均成绩
模式识别88.0
数据结构82.5
英语88.0

表 12    somecourse 表中课程的平均成绩查询结果

5. 各门课按平均成绩排序(降序,若改为升序,只需要将 DESC 换为 ASC)

查询语句如下:

SELECT B.课程名, AVG(A.选课成绩) AS '平均成绩' 
FROM selectcourse AS A, course AS B
WHERE A.课程号=B.课程号
GROUP BY A.课程号
ORDER BY 平均成绩 DESC

查询结果如表 13 13 13 所示:

课程名平均成绩
信号处理88.0
模式识别88.0
C++编程88.0
计算机视觉88.0
密码学88.0
数理分析88.0
英语88.0
声乐88.0
控制理论88.0
物理学82.5
化学分析82.5
遗传学82.5
数据结构82.5
宏观经济学77.0
解剖学77.0
有机化学77.0
材料学77.0
流体力学77.0
复变函数77.0
市场营销77.0
通信工程77.0
人力资源管理77.0
随机数学77.0
组织理论与设计77.0
日语77.0
证券投资学77.0
美术77.0
微观经济学71.5
管理学66.0
公司战略66.0
德语66.0
西班牙语66.0

表 13    各门课按平均成绩排序查询结果

6. 显示所有的课程名和讲课教师名

查询语句如下:

SELECT B.课程名, C.教师姓名
FROM teach AS A, course AS B, teacher AS C
WHERE A.课程号=B.课程号 AND A.教师编号=C.教师编号

查询结果如表 14 14 14 所示:

课程名教师姓名
模式识别牛根生
C++编程王石
计算机视觉马化腾
密码学周鸿祎
数理分析马云
英语柳传志
声乐史玉柱
控制理论王建宙
信号处理李彦宏
物理学周小川
化学分析牛根生
遗传学王石
数据结构马化腾
通信工程周鸿祎
随机数学马云
日语柳传志
美术史玉柱
解剖学王建宙
有机化学李彦宏
材料学周小川
流体力学牛根生
复变函数王石
市场营销马化腾
人力资源管理周鸿祎
组织理论与设计马云
证券投资学柳传志
宏观经济学史玉柱
微观经济学王建宙
管理学李彦宏
公司战略周小川
德语牛根生
西班牙语王石

表 14    所有的课程名和讲课教师名查询结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1297974.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【GEE笔记】随机森林特征重要性计算并排序

随机森林是一种基于多个决策树的集成学习方法,可以用于分类和回归问题。在gee中可以使用ee.Classifier.smileRandomForest()函数来创建一个随机森林分类器,并用它来对影像进行分类。 随机森林分类器有一个重要的属性,就是可以计算每个特征&a…

计算机毕业设计springboot+ssm停车场车位预约系统java

管理员不可以注册账号 停车位包括车位所在楼层、车位编号、车位类型(全时间开放/高峰期开放)、预定状态等 用户预约时要求支付预约时间段的停车费用 违规行为:1.停车超过预约时间段 2.预约未使用 于系统的基本要求 (1)功能要求&am…

class067 二维动态规划【算法】

class067 二维动态规划 code1 64. 最小路径和 // 最小路径和 // 给定一个包含非负整数的 m x n 网格 grid // 请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 // 说明:每次只能向下或者向右移动一步。 // 测试链接 : https://leetcode…

【腾讯云 HAI域探秘】StableDiffusionWebUI 让我找到了宫崎骏动漫里的夏天

目录 前言一、HAI二、应用场景三、构建 Stable Diffusion 模型1、新建HAI应用2、StableDiffusionWebUI(1)功能介绍(2)页面转中文(3)AI绘图① 正向提示词语② 反向提示词③ “” 、“ AND”、“|” 用法④ 权…

网上下载的pdf文件,为什么不能复制文字?

不知道大家有没有到过这种情况?在网上下载的PDF文件打开之后,发现选中文字之后无法复制。甚至其他功能也都无法使用,这是怎么回事?该怎么办? 当我们发现文件打开之后,编辑功能无法使用,很可能是…

基于MATLAB的BPSK调制解调仿真(仿真图超多,结果超清晰)

基于MATLAB的BPSK调制解调仿真(包含中间各个环节的时域波形、功率谱、频谱图、抽样后的星座图和眼图、理论与仿真的误码率曲线) 目录 前言 一、BPSK基本原理 二、BPSK调制解调过程 三、仿真结果 1、码元信噪比eb/n0-10dB时 1、双极性不归零基带信号 2、成型滤波(根升余弦…

uni-app应用设置 可以根据手机屏幕旋转进行 (横/竖) 屏切换

首先 我们打开项目的 pages.json 在左侧导航栏中找到 源码视图 然后找到 app-plus 配置 在下面加上 "orientation": [//竖屏正方向"portrait-primary",//竖屏反方向"portrait-secondary",//横屏正方向"landscape-primary",//横屏反方…

Other -- ChatGPT 原理

本文为个人理解,帮助小白(本人就是)了解正在创建新时代的 AI 产品,如文中理解有误欢迎留言。 [参考链接--](https://baijiahao.baidu.com/s?id1765556782543603120&wfrspider&forpc) 1. 了解一些基本概念 大语言模型&a…

安卓MediaRecorder(2)录制源码分析

文章目录 前言JAVA new MediaRecorder() 源码分析android_media_MediaRecorder.cpp native_init()MediaRecorder.java postEventFromNativeandroid_media_MediaRecorder.cpp native_setup() MediaRecorder 参数设置MediaRecorder.prepare 分析MediaRecorder.start 分析MediaRec…

[面试题~Docker] 云原生必问基础篇

文章目录 基础相关1. Docker 是什么?2. 镜像是什么3. 容器是什么4. 数据卷是什么5. Docker 和虚拟机的区别?6. Docker 常用命令有哪些? 原理相关1. docker 有几种网络模式host 模式container模式none模式bridge模式 2. docker 网络实现在Linu…

AGILE-SCRUM

一个复杂的汽车ECU开发。当时开发队伍遍布全球7个国家,10多个地区,需要同时为多款车型定制不同的软件,头疼的地方是: 涉及到多方人员协调,多模块集成和管理不同软件团队使用的设计工具、验证工具,数据、工…

C语言数据结构-基于单链表实现通讯录

文章目录 1 基础要求2 通讯录功能2.1 引入单链表的文件2.2 定义联系人数据结构2.3 打开通讯录2.4 保存数据后销毁通讯录2.5 添加联系人2.6 删除联系人2.7 修改联系人2.8 查找联系人2.9 查看通讯录 3 通讯录代码展示3.1 SeqList_copy.h3.2 SeqList_copy.c3.3 Contact.h3.4 Conta…

【论文阅读】Reachability and distance queries via 2-hop labels

Cohen E, Halperin E, Kaplan H, et al. Reachability and distance queries via 2-hop labels[J]. SIAM Journal on Computing, 2003, 32(5): 1338-1355. Abstract 图中的可达性和距离查询是许多应用的基础,从地理导航系统到互联网路由。其中一些应用程序涉及到巨…

免费开源-数字孪生城市污水处理平台

智慧城市污水处理平台,基于污水厂三维模型可视化场景,结合物联网IOT、视频监控以及综合运营数据,增加污水处理厂的掌控力度。飞渡科技利用数字孪生技术结合物联网IOT技术,直观展现各污水处理站点的整体建设规模,以及污…

pytorch:YOLOV1的pytorch实现

pytorch:YOLOV1的pytorch实现 注:本篇仅为学习记录、学习笔记,请谨慎参考,如果错误请评论指出。 参考: 动手学习深度学习pytorch版——从零开始实现YOLOv1 目标检测模型YOLO-V1损失函数详解 3.1 YOLO系列理论合集(YOL…

Windows Service Name重复问题

Windows Service Name重复问题 1,问题 2,打开命令提示符,管理员身份运行 3,输入命令:sc delete MYSQL57 4,验证一下,可以看见已经没有感叹号啦 ,可以看见已经没有感叹号啦

基于Qt的Live2D模型显示以及控制

基于Qt的Live2D模型显示以及控制 基本说明 Live2D官方提供有控制Live2D模型的SDK,而且还提供了一个基于OpenGL的C项目Example,我们可以基于该项目改成Qt的项目,做一个桌面端的Live2D桌宠程序。 官方例子 经过改造效果如下图所示。 官方项目配置 下载官方提供的SD…

视觉检测系统在半导体行业的应用

一、半导体产业链概述 半导体产业链是现代电子工业的核心组成部分,涵盖了从原材料到最终产品的整个生产过程。这个产业链主要分为以下几个环节: 1.原材料供应:半导体行业的基石是半导体材料,如硅片、化合物半导体等。这些材料需要…

CentOS7安装Docker,DockerCompose

安装docker 1、卸载docker 查看是否有旧版本docker docker info首先检测我们虚拟机是否已经安装过Docker,如果安装则需卸载。代码中“\”符号为换行符,相当于一行内容分为多行,这是检测docker的各种组件 yum remove docker \docker-clien…

高项备考葵花宝典-项目进度管理输入、输出、工具和技术(上,很详细考试必过)

项目进度管理的目标是使项目按时完成。有效的进度管理是项目管理成功的关键之一,进度问题在项目生命周期内引起的冲突最多。 小型项目中,定义活动、排列活动顺序、估算活动持续时间及制定进度模型形成进度计划等过程的联系非常密切,可以视为一…