MySQL~mysql基础应用相关题
整卷阅览:


想要获取试卷原版请点击以下链接下载:
https://download.csdn.net/download/qq_53142796/88168133
https://download.csdn.net/download/qq_53142796/88168133
解题过程:
数据库:studentdb
数据库表如下:

题目一:数据内容基本操作(每题4分,共20分)
1. 创建数据库studentdb
代码如下:
CREATE DATABASE studentdb;USE studentdb;

2. 在studentdb 数据库中创建student表和score表,包括主外键关系
代码如下:
-- 创建student表
CREATE TABLE IF NOT EXISTS student (STUID INT PRIMARY KEY AUTO_INCREMENT,NAME VARCHAR(20) NOT NULL,PHONE VARCHAR(20),SEX VARCHAR(2),BIRTHDAY DATE,SCLASS VARCHAR(50)
);-- 创建score表
CREATE TABLE IF NOT EXISTS score (SCOREID INT PRIMARY KEY AUTO_INCREMENT,STUID INT,ENGLISH INT,MATH INT,FOREIGN KEY (STUID) REFERENCES student(STUID)
);

3. 插入一条学生信息:姓名:李冰,电话:18866567880,性别:男,出生日期:1980-05-22
代码如下:
INSERT INTO student (NAME, PHONE, SEX, BIRTHDAY)
VALUES ('李冰', '18866567880', '男', '1980-05-22');
SELECT * FROM student;

4. 修改学生编号为22的英语成绩为88
代码如下:
INSERT INTO student (STUID, NAME, PHONE, SEX, BIRTHDAY)
VALUES (22, '张三', '17866567770', '女', '1982-05-20');INSERT INTO score (STUID, ENGLISH)
VALUES (22, 80);SELECT * FROM student;
SELECT * FROM score;UPDATE score
SET ENGLISH = 88
WHERE STUID = 22;SELECT * FROM score;


5. 删除学生编号为35的学生信息
代码如下:
INSERT INTO student (STUID, NAME, PHONE, SEX, BIRTHDAY)
VALUES (35, '李四', '14086567770', '男', '1981-05-20');SELECT * FROM student;DELETE FROM student
WHERE STUID = 35;

题目二:查询操作(每题5分)
1. 查询所有性别为男的学生信息
代码如下:
INSERT INTO student (NAME, PHONE, SEX, BIRTHDAY)
VALUES ('王五', '15066567880', '男', '1988-08-22'),
('王柳', '14366567880', '男', '1982-08-22'),
('马七', '19466567880', '女', '1995-09-22'),
('马坝', '14276567880', '男', '1995-04-22'),
('张和', '18366567880', '男', '1980-05-22'),
('张武心', '19866567880', '男', '1995-01-22'),
('张二虎', '18766567880', '男', '1995-05-22');SELECT * FROM student;SELECT *
FROM student
WHERE SEX = '男';


2. 查询所有英语成绩和数学成绩都及格的成绩信息
代码如下:
ALTER TABLE score
ADD COLUMN MATH INT,
ADD COLUMN ENGLISH INT;INSERT INTO score (STUID, MATH, ENGLISH)
VALUES (36, 85, 95), -- 插入王五的成绩(37, 80, 90), -- 插入王柳的成绩(38, 90, 85), -- 插入马七的成绩(39, 85, 90), -- 插入马坝的成绩(40, 85, 95), -- 插入张和的成绩(41, 90, 95), -- 插入张武心的成绩(42, 75, 85); -- 插入张二虎的成绩SELECT * FROM score;SELECT *
FROM score
WHERE ENGLISH >= 60 AND MATH >= 60;



3. 查询出生日期在1995年的学生信息
代码如下:
SELECT *
FROM student
WHERE YEAR(BIRTHDAY) = 1995;

4. 学校里面需要在每个月的1号为该月过生日的同学采购生日礼物,于是我们需要一张报表用于查询该年度每个月过生日的同学数,从而计算出每个月生日礼需要的经费,假设每一个同学的生日礼成本为88元钱,需要统计信息:月份、人数、生日礼费用,请用SQL实现
代码如下:
SELECT MONTH(BIRTHDAY) AS 月份, COUNT(*) AS 人数, COUNT(*) * 88 AS 生日礼费用
FROM student
WHERE YEAR(BIRTHDAY) = 1995
GROUP BY MONTH(BIRTHDAY);

5. 学校里面需要选拔一批英语超过95分的学生参加市里面的英语大赛,并且还要求成绩从高到低进行显示,方便筛选。学校教务处需要得到信息:学生编号、学生姓名、分数,请用SQL实现:
代码如下:
SELECT student.STUID, student.NAME, score.ENGLISH
FROM student
INNER JOIN score ON student.STUID = score.STUID
WHERE score.ENGLISH > 95
ORDER BY score.ENGLISH DESC;

6. 查询所有性别为女性的学生的学号,姓名和电话
代码如下:
SELECT STUID, NAME, PHONE
FROM student
WHERE SEX = '女';

7. 查询所有姓‘张’的且是三个字的学生信息,请用至少2中方式实现
代码如下:
-- 第一种 --
SELECT *
FROM student
WHERE NAME LIKE '张__' AND LENGTH(NAME) = 3;-- 第二种 --
SELECT *
FROM student
WHERE NAME LIKE '张%'
AND SUBSTR(NAME, 2, 3) != '';

8. 查询数学成绩的最高分,最低分,平均分
代码如下:
SELECT MAX(MATH) AS 最高分, MIN(MATH) AS 最低分, AVG(MATH) AS 平均分
FROM score;

9. 查询数学成绩分数最低的学生人数
代码如下:
SELECT COUNT(*)
FROM score
WHERE MATH = (SELECT MIN(MATH) FROM score);

10. 查询既有数学成绩又有英语成绩的学生信息
代码如下:
SELECT s.STUID, s.NAME, sc.ENGLISH, sc.MATH
FROM student s
JOIN score sc ON s.STUID = sc.STUID
WHERE sc.ENGLISH IS NOT NULL AND sc.MATH IS NOT NULL;

11. 统计各班的不同性别的学生人数
代码如下:
SELECT SCLASS, SEX, COUNT(*) AS 人数
FROM student;

12. 查询所有参与考试的学生信息
代码如下:
SELECT DISTINCT student.*
FROM student
JOIN score ON student.STUID = score.STUID;

13. 查询所有数学成绩与英语成绩差20分以上的学生名单,这些学生将作为偏科学生由学校老师专门进行辅导。需要查询出的信息:学生编号、学生姓名、数学成绩、英语成绩、分数差值,请用SQL实现。
代码如下:
SELECT student.STUID, student.NAME, score.MATH, score.ENGLISH, ABS(score.MATH - score.ENGLISH) AS 分数差值
FROM student
JOIN score ON student.STUID = score.STUID
WHERE ABS(score.MATH - score.ENGLISH) > 20;

14. 为了将平均分低于80分的班级作为重点关注班级,需要信息:班级名称、平均分数,请用SQL实现。
代码如下:
SELECT student.SCLASS AS 班级名称, AVG((score.ENGLISH + score.MATH) / 2) AS 平均分数
FROM student
JOIN score ON student.STUID = score.STUID
GROUP BY student.SCLASS
HAVING AVG((score.ENGLISH + score.MATH) / 2) < 80;

相关文章:
MySQL~mysql基础应用相关题
整卷阅览: 想要获取试卷原版请点击以下链接下载: https://download.csdn.net/download/qq_53142796/88168133https://download.csdn.net/download/qq_53142796/88168133 解题过程: 数据库:studentdb 数据库表如下: …...
Redis | 哨兵模式
Redis | 哨兵模式 1. 简介 Redis Sentinel(哨兵)是Redis提供的一种高可用性解决方案。它是一个独立的进程,用于监控和管理Redis主从模式的节点,并在主节点故障时自动进行故障转移。哨兵模式可以确保Redis集群的高可用性和数据一…...
MySQL语句性能分析与优化
目录 SQL性能分析 SQL执行频率 SQL慢查询日志 Profile Explain SQL优化 插入数据的优化 主键优化 Order By优化 Group By优化 Limit 优化 Count 优化 Update 优化 多表连接查询优化 SQL性能分析 通过SQL性能分析来做SQL的优化,主要是优化SQL的查询语…...
SpringBoot实现数据库读写分离
SpringBoot实现数据库读写分离 参考博客https://blog.csdn.net/qq_31708899/article/details/121577253 实现原理:翻看AbstractRoutingDataSource源码我们可以看到其中的targetDataSource可以维护一组目标数据源(采用map数据结构),并且做了路由key与目标…...
Linux(四)--包软件管理器与Linux上环境部署示例
一.包软件管理器【yum和apt】 1.先来学习使用yum命令。yum:RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题。通过yum命令我们可以轻松实现软件的下载,查找,卸载与更新等管理软件的操作。 最常用…...
自监督去噪:Recorrupted-to-Recorrupted原理分析与总结
文章目录 1. 方法原理1.1 相关研究1.2 研究思路1.3 小结 2. 实验结果3. 总结 文章地址: https://ieeexplore.ieee.org/document/9577798/footnotes#footnotes 参考博客: https://github.com/PangTongyao/Recorrupted-to-Recorrupted-Unsupervised-Deep-Learning-for-Image-Den…...
【css】css实现水平和垂直居中
通过 justify-content 和 align-items设置水平和垂直居中, justify-content 设置水平方向,align-items设置垂直方向。 代码: <style> .center {display: flex;justify-content: center;align-items: center;height: 200px;border: 3px…...
常见Charles在Windows10抓包乱码问题
废话不多说 直接开整 最近反复安装证书还是乱码 网上各种百度还是不行 首先计算机查看安装好的证书 certmgr.msc 找到并删除掉 重新安装证书 具体解决方法: 第一步:点击 【工具栏–>Proxy–>SSL Proxying Settings…】 第二步:配置…...
汽车维修保养记录查询API:实现车辆健康状况一手掌握
在当今的数字化世界中,汽车维修保养记录的查询和管理变得前所未有地简单和便捷。通过API,我们可以轻松地获取车辆的维修和保养记录,从而实现对手中车辆健康状况的实时掌握。 API(应用程序接口)是进行数据交换和通信的标…...
正则表达式学习记录(Python)
正则表达式学习记录(Python) 一、特殊符号和字符 多个正则表达式匹配 ( | ) 用来分隔不同的匹配模式,相当于逻辑或,可以符合其中任何一个正则表达式 at | home # 表示匹配at或者home bat | bet | bit # 表示匹配bat或…...
Ubuntu20.04操作系统安装Docker
1、添加Docker仓库 curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -sudo add-apt-repository \"deb [archamd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \$(lsb_release -cs) \stable"2、安装Docker sudo…...
python制作小程序制作流程,用python编写一个小程序
这篇文章主要介绍了python制作小程序代码宠物运输,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。 1 importtkinter2 importtkinter.messagebox3 importmath4 classJSQ:5 6 7 d…...
Github 创建自己的博客网站
参考pku大佬视频制作,附上B站视频:【GitHub Pages 个人网站构建与发布】 同时还参考了:【Python版宝藏级静态站点生成器Material for MkDocs】 GitHub Pages 介绍 内容参考:GitHub Pages - 杨希杰的个人网站 (yang-xijie.githu…...
Windows上安装 jdk 环境并配置环境变量 (超详细教程)
👨🎓博主简介 🏅云计算领域优质创作者 🏅华为云开发者社区专家博主 🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入! 🐋 希望大家多多支…...
高效构建 vivo 企业级网络流量分析系统
作者:vivo 互联网服务器团队- Ming Yujia 随着网络规模的快速发展,网络状况的良好与否已经直接关系到了企业的日常收益,故障中的每一秒都会导致大量的用户流失与经济亏损。因此,如何快速发现网络问题与定位异常流量已经成为大型企…...
认识awk
awk 认识awk awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入(stdin)、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行…...
【C#学习笔记】数组和索引器
文章目录 数组单维数组多维数组交错数组 索引器类上的索引器方法1方法2 接口中的索引器 数组 数组具有以下属性: 数组可以是一维、多维或交错的。创建数组实例时,将建立纬度数量和每个纬度的长度。 这些值在实例的生存期内无法更改。数值数组元素的默认…...
常见距离计算的Python实现
常见的距离有曼哈顿距离、欧式距离、切比雪夫距离、闵可夫斯基距离、汉明距离、余弦距离等,用Python实现计算的方式有多种,可以直接构造公式计算,也可以利用内置线性代数函数计算,还可以利用scipy库计算。 1.曼哈顿距离 也叫城市…...
开发运营监控
DevOps 监控使管理员能够实时了解生产环境中的元素,并有助于确保应用程序平稳运行,同时提供最高的业务价值,对于采用 DevOps 文化和方法的公司来说,这一点至关重要。 什么是开发运营监控 DevOps 通过持续开发、集成、测试、监控…...
食品小程序的制作教程
在今天的互联网时代,小程序已经成为了各行业推广和销售的重要途径。特别是对于食品行业来说,拥有一个专属的小程序商城可以带来更多的用户和销售机会。那么,如何制作一个完美的食品小程序呢?下面就跟随我来一步步教你,…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...
OkHttp 中实现断点续传 demo
在 OkHttp 中实现断点续传主要通过以下步骤完成,核心是利用 HTTP 协议的 Range 请求头指定下载范围: 实现原理 Range 请求头:向服务器请求文件的特定字节范围(如 Range: bytes1024-) 本地文件记录:保存已…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...
让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...
分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...
学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...
