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 通过持续开发、集成、测试、监控…...
食品小程序的制作教程
在今天的互联网时代,小程序已经成为了各行业推广和销售的重要途径。特别是对于食品行业来说,拥有一个专属的小程序商城可以带来更多的用户和销售机会。那么,如何制作一个完美的食品小程序呢?下面就跟随我来一步步教你,…...
告别激活弹窗:KMS_VL_ALL_AIO智能激活工具完全指南
告别激活弹窗:KMS_VL_ALL_AIO智能激活工具完全指南 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统激活烦恼吗?每次开机都看到"需要激活"的提…...
从零构建高性能技术博客:SSG选型、自动化部署与SEO优化实战
1. 项目概述:一个技术博客的诞生与演进“wangtunan/blog”,这看起来只是一个简单的GitHub仓库名,背后却是一个技术人持续输出、构建个人知识体系的完整实践。它不仅仅是一个存放Markdown文件的代码库,更是一个集成了现代前端技术栈…...
HS2-HF Patch:为《Honey Select 2》注入新生命的魔法补丁
HS2-HF Patch:为《Honey Select 2》注入新生命的魔法补丁 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch 你是不是曾经打开《Honey Select 2》时&am…...
基于AI智能体的渗透测试框架:从自动化到智能协同的范式转变
1. 项目概述:一个面向渗透测试的智能体框架最近在整理自己的工具链时,发现了一个挺有意思的项目,叫GH05TCREW/pentestagent。乍一看这个名字,你可能会觉得这又是一个“缝合怪”式的自动化渗透工具,把Nmap、SQLmap之类的…...
Linuxbonding链路异常定位实战
Linuxbonding链路异常定位实战这是一篇面向中级 Linux 使用者的技术文章,主题聚焦在bonding链路,重点讨论链路聚合、冗余切换和接口状态。在真实生产环境中,bonding链路相关问题往往不会以单一错误形式出现,而是混杂在日志、权限、…...
C语言结构体、枚举、联合体:从内存布局看区别,新手避坑指南
C语言结构体、枚举、联合体:从内存布局看区别,新手避坑指南 在C语言开发中,结构体、枚举和联合体是构建复杂数据模型的三大基石。但很多开发者在实际项目中常遇到这样的困惑:为什么结构体占用的内存比预期大?枚举变量在…...
Unity游戏开发集成MCP协议:AI助手自动化操作指南
1. 项目概述:Unity游戏开发中的MCP革命如果你是一名Unity开发者,最近可能已经注意到一个名为“CoderGamester/mcp-unity”的项目在GitHub上悄然走红。这不仅仅是一个普通的插件或工具包,它代表了一种全新的工作流范式,旨在将大型语…...
可穿戴电子模块化连接方案:5mm微型按扣实现电路板与织物的可插拔连接
1. 项目概述与核心思路在折腾可穿戴电子项目时,最让人头疼的问题之一,就是如何让电路板与衣物既可靠连接,又能方便地拆下来。传统的做法要么是用导电胶带粘(不牢靠、易氧化),要么是直接把线焊死在板子上然后…...
技术解构:逆向工程视角下的百度网盘下载链接解析机制
技术解构:逆向工程视角下的百度网盘下载链接解析机制 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 想象一下,当你收到朋友分享的百度网盘链接时&…...
别再让某个用户占满硬盘了!手把手教你用Linux quota给CentOS 7/8的/home目录设置磁盘限额
别再让某个用户占满硬盘了!手把手教你用Linux quota给CentOS 7/8的/home目录设置磁盘限额 想象一下这样的场景:你管理的服务器上,十几个开发人员共享着同一个存储空间。某天突然收到警报——磁盘空间不足!调查后发现,一…...
