当前位置:网站首页>数据库实验报告(二)
数据库实验报告(二)
2022-07-01 10:42:00 【Billy Miracle】
一、 实验目的
掌握SQL程序设计基本规范,熟练运用SQL语言实现数据基本查询,包括单表查询、分组统计查询和连接查询等。掌握视图的使用。掌握SQL嵌套查询和集合查询等各种高级查询的设计方法。熟悉数据库的数据更新操作,能够使用SQL语句对数据库进行数据的插入、修改、删除操作。熟悉SQL语言有关视图的操作,能够熟练使用SQL语句来创建需要的视图,定义数据库外模式,并能使用所创建的视图实现数据管理。
二、 实验内容
- 查询SC表中的全部数据。
- 查询计算机系学生的姓名和年龄
- 查询成绩在70~80分的学生的学号、课程号和成绩
- 查询计算机系年龄在18~20岁的男生姓名和年龄
- 查询C001课程的最高分
- 查询计算机系学生的最大年龄和最小年龄
- 统计每个系的学生人数
- 统计每门课程的选课人数和最高成绩
- 计算每个学生的选课门数和考试总成绩,并按选课门数升序显示结果
- 列出总成绩超过200的学生的学号和总成绩
- 查询选了C002课程的学生姓名和所在系
- 查询考试成绩80分以上的学生姓名、课程号和成绩,并按成绩降序排列结果
- 查询与VB在同一学期开设的课程的课程名和开课学期
- 查询与李勇年龄相同的学生的姓名、所在系和年龄
- 查询哪些课程没有学生选修,列出课程号和课程名
- 查询每个学生的选课情况,包括未选课的学生,列出学生的学号、姓名、选的课程号
- 查询计算机系哪些学生没有选课,列出学生姓名
- 查询计算机系年龄最大的三个学生的姓名和年龄,top 3
- 列出“VB”课程考试成绩前三名的学生的学号、姓名、所在系和VB成绩,top3
- 查询选课门数最多的前2位学生,列出学号和选课门数, top 2
- 查询通信工程系成绩80分以上的学生的学号和姓名
- 查询计算机系学生考试成绩高于计算机系学生平均成绩的学生的姓名、考试的课程名和考试成绩
- 统计每门课程的选课人数,包括有人选的课程和没有人选的课程,列出课程号,选课人数及选课情况,其中选课情况为:如果此门课程的选课人数超过100人,则显示“人多”;如果此门课程的选课人数在40~100,则显示“一般”;如果此门课程的选课人数在1~40,则显示“人少”;如果此门课程没有人选,则显示“无人选”。
- 删除没人选的课程的基本信息
- 包含学生的学号、姓名、所在系、年龄,课程号、课程名、课程学分的视图
- 包含学生的学号、姓名、选修的课程名和考试成绩的视图
- 统计每个学生的选课门数,要求列出学生学号和选课门数的视图
- 统计每个学生的修课总学分,要求列出学生学号和总学分的视图(说明:考试成绩大于等于60才可获得此门课程的学分)。
- 利用视图查询考试成绩大于等于90分的学生的姓名、课程名和成绩。
- 利用视图查询选课门数超过3门的学生的学号和选课门数。
- 利用视图查询计算机系选课门数超过3门的学生的姓名和选课门数。
- 利用视图查询修课总学分超过10分的学生的学号、姓名、所在系和修课总学分。
- 利用视图查询年龄大于等于20岁的学生中,修课总学分超过10分的学生的姓名、年龄、所在系和修课总学分。
- 再创建一个“计算机系”同学的学号、姓名、所在系、年龄,课程号、课程名、课程学分的视图。
增加一条记录,
0841101 张新 计算机系 20 C001 高等数学 4
修改这条记录为
0841101 张新 物理系 20 C001 高等数学 4
三、 实验环境
MySQL、Navicat 15 for MySQL
四、 实验前准备
实验数据,使用第一次实验创建的表和数据
五、 实验步骤
查询SC表中的全部数据。

查询计算机系学生的姓名和年龄,并使用别名

查询成绩在70~80分的学生的学号、课程号和成绩

查询计算机系年龄在18~20岁的男生姓名和年龄

查询C001课程的最高分

查询计算机系学生的最大年龄和最小年龄

统计每个系的学生人数

统计每门课程的选课人数和最高成绩

计算每个学生的选课门数和考试总成绩,并按选课门数升序显示结果

列出总成绩超过200的学生的学号和总成绩

查询选了C002课程的学生姓名和所在系

查询考试成绩80分以上的学生姓名、课程号和成绩,并按成绩降序排列结果

查询与VB在同一学期开设的课程的课程名和开课学期

查询与李勇年龄相同的学生的姓名、所在系和年龄

查询哪些课程没有学生选修,列出课程号和课程名

查询每个学生的选课情况,包括未选课的学生,列出学生的学号、姓名、选的课程号

查询计算机系哪些学生没有选课,列出学生姓名

查询计算机系年龄最大的三个学生的姓名和年龄,top 3

列出“VB”课程考试成绩前三名的学生的学号、姓名、所在系和VB成绩,top3

查询选课门数最多的前2位学生,列出学号和选课门数, top 2

查询通信工程系成绩80分以上的学生的学号和姓名

查询计算机系学生考试成绩高于计算机系学生平均成绩的学生的姓名、考试的课程名和考试成绩

统计每门课程的选课人数,包括有人选的课程和没有人选的课程,列出课程号,选课人数及选课情况,其中选课情况为:如果此门课程的选课人数超过100人,则显示“人多”;如果此门课程的选课人数在40~100,则显示“一般”;如果此门课程的选课人数在1~40,则显示“人少”;如果此门课程没有人选,则显示“无人选”。

删除没人选的课程的基本信息

包含学生的学号、姓名、所在系、年龄,课程号、课程名、课程学分的视图

包含学生的学号、姓名、选修的课程名和考试成绩的视图

统计每个学生的选课门数,要求列出学生学号和选课门数的视图

统计每个学生的修课总学分,要求列出学生学号和总学分的视图(说明:考试成绩大于等于60才可获得此门课程的学分)。

利用视图查询考试成绩大于等于90分的学生的姓名、课程名和成绩。

利用视图查询选课门数超过3门的学生的学号和选课门数。

利用视图查询计算机系选课门数超过3门的学生的姓名和选课门数

利用视图查询修课总学分超过10分的学生的学号、姓名、所在系和修课总学分。

利用视图查询年龄大于等于20岁的学生中,修课总学分超过10分的学生的姓名、年龄、所在系和修课总学分。

再创建一个“计算机系”同学的学号、姓名、所在系、年龄,课程号、课程名、课程学分的视图。
增加一条记录,
0841101 张新 计算机系 20 C001 高等数学 4
修改这条记录为
0841101 张新 物理系 20 C001 高等数学 4

六、实验结果
查询SC表中的全部数据。

查询计算机系学生的姓名和年龄

查询成绩在70~80分的学生的学号、课程号和成绩

查询计算机系年龄在18~20岁的男生姓名和年龄

查询C001课程的最高分

查询计算机系学生的最大年龄和最小年龄

统计每个系的学生人数

统计每门课程的选课人数和最高成绩

计算每个学生的选课门数和考试总成绩,并按选课门数升序显示结果

列出总成绩超过200的学生的学号和总成绩

查询选了C002课程的学生姓名和所在系

查询考试成绩80分以上的学生姓名、课程号和成绩,并按成绩降序排列结果

查询与VB在同一学期开设的课程的课程名和开课学期

查询与李勇年龄相同的学生的姓名、所在系和年龄

查询哪些课程没有学生选修,列出课程号和课程名

查询每个学生的选课情况,包括未选课的学生,列出学生的学号、姓名、选的课程号


查询计算机系哪些学生没有选课,列出学生姓名

查询计算机系年龄最大的三个学生的姓名和年龄,top 3

列出“VB”课程考试成绩前三名的学生的学号、姓名、所在系和VB成绩,top3

查询选课门数最多的前2位学生,列出学号和选课门数, top 2

查询通信工程系成绩80分以上的学生的学号和姓名

查询计算机系学生考试成绩高于计算机系学生平均成绩的学生的姓名、考试的课程名和考试成绩

统计每门课程的选课人数,包括有人选的课程和没有人选的课程,列出课程号,选课人数及选课情况,其中选课情况为:如果此门课程的选课人数超过100人,则显示“人多”;如果此门课程的选课人数在40~100,则显示“一般”;如果此门课程的选课人数在1~40,则显示“人少”;如果此门课程没有人选,则显示“无人选”。

删除没人选的课程的基本信息

包含学生的学号、姓名、所在系、年龄,课程号、课程名、课程学分的视图

包含学生的学号、姓名、选修的课程名和考试成绩的视图

统计每个学生的选课门数,要求列出学生学号和选课门数的视图

统计每个学生的修课总学分,要求列出学生学号和总学分的视图(说明:考试成绩大于等于60才可获得此门课程的学分)。

利用视图查询考试成绩大于等于90分的学生的姓名、课程名和成绩。

利用视图查询选课门数超过3门的学生的学号和选课门数。

利用视图查询计算机系选课门数超过3门的学生的姓名和选课门数。

利用视图查询修课总学分超过10分的学生的学号、姓名、所在系和修课总学分。

利用视图查询年龄大于等于20岁的学生中,修课总学分超过10分的学生的姓名、年龄、所在系和修课总学分。

再创建一个“计算机系”同学的学号、姓名、所在系、年龄,课程号、课程名、课程学分的视图。
增加一条记录,
0841101 张新 计算机系 20 C001 高等数学 4
修改这条记录为
0841101 张新 物理系 20 C001 高等数学 4
注意:不能在一张由多张关联表连接而成的视图上做同时修改两张表的操作。
边栏推荐
- Error: missing revert data in call exception
- 投稿开奖丨轻量应用服务器征文活动(5月)奖励公布
- Zero foundation software testing must see, 10 years of testing old bird's conscience suggestions (a total of 15)
- 客户端如何请求数据库?
- Valgrind usage of memory leak locating tool
- The exclusive collection of China lunar exploration project is limited to sale!
- Rising stars in Plant Sciences (rsps2022) final Science Lecture (6.30 pm)
- 678. 有效的括号字符串
- Does anyone know the logic of limit statement execution in Clickhouse? In the picture, the SQL above can be executed successfully
- 数据库的增删改查问题
猜你喜欢

It is interesting to understand MMAP in this way!

Rising Stars in Plant Sciences (RSPS2022) Finalist科学演讲会(6.30晚9点)

JD and Tencent renewed the three-year strategic cooperation agreement; The starting salary rose to 260000 yuan! Samsung sk of South Korea competes for salary increase to retain semiconductor talents;

Continue to advance, and softcom power steadily promotes cloud intelligence strategy

Design and practice of new generation cloud native database

缺少比较器,运放来救场!(运放当做比较器电路记录)

Have you learned the necessary global exception handler for the project

What a high commission! The new programmer's partner plan is coming. Everyone can participate!

华为HMS Core携手超图为三维GIS注入新动能

关于#SQL#的问题,如何解决?
随机推荐
Who's still buying three squirrels
Venv: directory structure of venv
Write your own who commands
数字藏品市场新局面
Prism journal navigation button usability exploration record
php 实现抽奖功能
SQL Server列一相同的情况下,如何取列二的最大值,并重新生成表
【邂逅Django】——(二)数据库配置
Wireshark TS | 快速重传和乱序之混淆
How to solve the problem of SQL?
The list of winners of the digital collection of "century master" was announced
A new round of popularity of digital collections opens
venv: venv 的目录结构
SQL optimization - in and not in, exist
. Net 5.0+ does not need to rely on third-party native implementation of scheduled tasks
【Laravel 】faker数据填充详解
CRC 校验
NC | 肠道细胞和乳酸菌共同作用来防止念珠菌感染
Common penetration tools -goby
华为HMS Core携手超图为三维GIS注入新动能