【头歌系统数据库实验】实验4 MySQL单表查询

目录

第1关. 在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明'

第2关. 在users表中更新用户 user_id为robot_2 的信息,name设为 '机器人二号' 

第3关. 将solution表中所有 problem_id 为1003 题目的解答结果(result)设为 6

第4关:删除solution表中比赛contest_id 为1001的全部解答 

 第5关:查询所有 contest 的 title 和 end_time

第6关. 查询哪些选手的 user_id 提交过 solution,要求结果中 user_id 不重复 

 第7关:查询 end_time 晚于 '2020-11-21 17:30:00' 的 contest_id

第8关:查询 problem_id 在 1005~1009 之间的 problem 的 title

第9关:查询 language 不在 0、1、3 中的 solution 的 code_length

第10关:查询2018级选手信息(user_id 为学号的用户前4位为年级)

第11关:查询'生医'专业选手信息(name 中有 '生医' 的选手)

第12关:查询不属于任何比赛的solution的 solution_id 和 in_date(contest_id为NULL)

第13关:查询 result 为 6 且 problem_id大于1010 的 solution_id与language

第14关:查询提交过solution的选手人数 

第15关:查询耗内存(memory)最多的solution的内存消耗大小与 solution_id

第16关:查询每个题目的提交数 

第17关:查询提交数大于20的题目的题号

第18关:查找所有problem_id 为1001 的解答或contest_id 为空的解答 


如果你认为对你有帮助的话,不妨点赞收藏评论一下吧,爱你么么哒😘❤️❤️❤️

第1关. 在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明'

任务描述

在users表中新增一个用户,user_id为2019100904学号,name为'2019-物联网-李明'

相关知识

users为选手信息表; users表如下图(仅显示前几条):

,

现已构建users表,结构信息如下:

,


开始你的任务吧,祝你成功

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
INSERT
INTO users(user_id,name)
VALUES ('2019100904','2019-物联网-李明');

########## End ##########
#以下代码禁止删除
SELECT * FROM users WHERE users.user_id = '2019100904';

第2关. 在users表中更新用户 user_id为robot_2 的信息,name设为 '机器人二号' 

任务描述

在users表中更新用户 user_id为robot_2 的信息,name设为 '机器人二号'

相关知识

users为选手信息表; users表如下图(仅显示前几条):

,

现已构建users表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
UPDATE users
SET name='机器人二号'
WHERE user_id='robot_2';

########## End ##########
#以下代码禁止删除
SELECT * FROM users WHERE users.user_id = 'robot_2';

第3关. 将solution表中所有 problem_id 为1003 题目的解答结果(result)设为 6

任务描述

将solution表中所有 problem_id 为1003 题目的解答结果(result)设为 6

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
UPDATE solution
SET result=6
WHERE problem_id=1003;

########## End ##########
#以下代码禁止删除
SELECT * FROM solution WHERE solution.problem_id = 1003;

第4关:删除solution表中比赛contest_id 为1001的全部解答 

任务描述

删除solution表中比赛contest_id 为1001的全部解答

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
DELETE 
FROM solution
WHERE contest_id=1001;

########## End ##########
#以下代码禁止删除
SELECT * FROM solution WHERE solution.contest_id = 1001;

 第5关:查询所有 contest 的 title 和 end_time

任务描述

查询所有 contest 的 title 和 end_time。

相关知识

contest为比赛信息表; contest表如下图(仅显示前几条):

,

现已构建contest表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT title,end_time
FROM contest;

########## End ##########

第6关. 查询哪些选手的 user_id 提交过 solution,要求结果中 user_id 不重复 

任务描述

查询哪些选手的 user_id 提交过 solution,要求结果中 user_id 不重复

相关知识

solution选手提交的题目解答。 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select distinct user_id
from solution;

########## End ##########

 第7关:查询 end_time 晚于 '2020-11-21 17:30:00' 的 contest_id

任务描述

查询 end_time 晚于 '2020-11-21 17:30:00' 的 contest_id

相关知识

contest为比赛信息表; contest表如下图(仅显示前几条):

,

现已构建contest表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select contest_id
from contest
where end_time>'2020-11-21 17:30:00';

########## End ##########

第8关:查询 problem_id 在 1005~1009 之间的 problem 的 title

任务描述

查询 problem_id 在 1005~1009 之间的 problem 的 title

相关知识

problem为题目表; problem表如下图(仅显示前几条):

,

现已构建problem表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select title
from problem
where problem_id between 1005 and 1009;

########## End ##########

第9关:查询 language 不在 0、1、3 中的 solution 的 code_length

任务描述

查询 language 不在 0、1、3 中的 solution 的 code_length

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select code_length
from solution
where language not in('0','1','3');

########## End ##########


第10关:查询2018级选手信息(user_id 为学号的用户前4位为年级)

任务描述

查询2018级选手信息(user_id 为学号的用户前4位为年级)

相关知识

users为选手信息表; users表如下图(仅显示前几条):

,

现已构建users表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select*
from users
where user_id between 20180000000 and 20190000000;

########## End ##########

第11关:查询'生医'专业选手信息(name 中有 '生医' 的选手)

任务描述

查询'生医'专业选手信息(name 中有 '生医' 的选手)

相关知识

users为选手信息表; users表如下图(仅显示前几条):

,

现已构建users表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select*
from users
where name like '%生医%';

########## End ##########

第12关:查询不属于任何比赛的solution的 solution_id 和 in_date(contest_id为NULL)

任务描述

查询不属于任何比赛的solution的 solution_id 和 in_date(contest_id 为 NULL)

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select solution_id,in_date
from solution 
where contest_id is null;

########## End ##########

第13关:查询 result 为 6 且 problem_id大于1010 的 solution_id与language

任务描述

查询 result 为 6 且 problem_id大于1010 的 solution_id与language

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select solution_id,language
from solution
where result=6 and problem_id>1010;
########## End ##########

第14关:查询提交过solution的选手人数 

任务描述

查询提交过solution的选手人数

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select COUNT(DISTINCT user_id)
from solution;


########## End ##########

第15关:查询耗内存(memory)最多的solution的内存消耗大小与 solution_id

任务描述

查询耗内存(memory)最多的solution的内存消耗大小与 solution_id

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT memory,solution_id
FROM solution
WHERE memory in(
    SELECT MAX(memory)
    FROM solution
);

########## End ##########

第16关:查询每个题目的提交数 

任务描述

查询每个题目的提交数

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
SELECT problem_id,COUNT(problem_id)
from solution
group by problem_id;

########## End ##########

第17关:查询提交数大于20的题目的题号

任务描述

查询提交数大于20的题目的题号

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select problem_id
from solution 
group by problem_id
having count(*)>20;

########## End ##########

第18关:查找所有problem_id 为1001 的解答或contest_id 为空的解答 

任务描述

查找所有problem_id 为1001 的解答或 contest_id 为空的解答

相关知识

solution:选手提交的题目解答 solution表如下图(仅显示前几条):

,

现已构建solution表,结构信息如下:

,


开始你的任务吧,祝你成功!

USE `sqlexp-sztuoj`;
#请在此处添加实现代码
########## Begin ##########
select *
from solution
where problem_id=1001 or contest_id is null;

########## End ##########

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java抽象类(abstract class)和接口(interface)的区别——面试

1.抽象类(abstract class)和接口(interface)的区别: 抽象类可以有构造方法,接口中不能有构造方法。 抽象类中可以有普通成员变量,接口中没有普通成员变量。抽象类中可以包含非抽象的普通方法&am…

C语言进阶之路-指针、数组等混合小boss篇

目录 一、学习目标: 二、指针、数组的组合技能 引言 指针数组 语法 数组指针 三、勇士闯关秘籍 四、大杂脍 总结 一、学习目标: 知识点: 明确指针数组的用法和特点掌握数组指针的用法和特点回顾循环等小怪用法和特点 二、指针、数…

<Linux>(极简关键、省时省力)《Linux操作系统原理分析之文件管理(3)》(24)

《Linux操作系统原理分析之文件管理(3)》(24) 7 文件管理7.5 文件存储空间的管理7.6 文件的共享和保护7.6.1 文件存取控制7.6.2 文件共享的实现方法7.6.3 文件的备份转储 7 文件管理 7.5 文件存储空间的管理 位示图 对每个磁盘…

Lookup Argument简史

1. 引言 主要参考Ingonyama团队2023年4月文章《A Brief History of Lookup Arguments》。 近年来zk-SNARKs的研究热点有: 让ZKP proof更succinct降低Prover time和Verifier time 但,大多数SNARKs仍受限于,易于转换为多项式的算术运算。通…

Unity3D实现鼠标悬浮UI或物体上显示文字信息

系列文章目录 Unity工具 文章目录 系列文章目录前言最终效果一、UI事件显示文字1-1 ui事件需要引用命名空间using UnityEngine.EventSystems;1-2 IPointerEnterHandler 接口1-3 IPointerExitHandler 接口1-4 IPointerMoveHandler 接口 二、场景搭建2-1 实现如下 三、代码实现3…

C语言结构体介绍(超详细)

文章目录 每日一言结构体是什么?为什么要使用结构体?如何使用结构体?结构体的定义结构体的声明如何访问结构体中的成员 结构体内存对齐什么是结构体内存对齐对齐规则修改默认对齐数 为什么存在结构对齐 总结结语 每日一言 Develop your imagination – you can u…

Mabatis处理异常屏蔽SQL返回前端全局异常捕获处理

文章目录 Mabatis处理异常屏蔽SQL返回前端全局异常捕获处理结论1 java异常体系2 Spring框架异常处理3 定位Spring框架转化为哪种unchecked异常3.1 捕获RuntimeException定位Spring框架转化抛出的异常类3.2 进一步查看包名判断3.3 识别MyBatisSystemException下级实现3.3 识别My…

postman常用脚本

在参数中动态添加开始时间和结束时间的时间戳 1.先在collection中添加参数,这里的作用域是collection,也可以是其他的任何scope 2.在Pre-request Script 中设定开始时间和结束时间参数,比如昨天和今天的时间戳,下面是js代码 con…

【Qt开发流程】之对象模型1:信号和槽

Qt对象模型 标准c对象模型为对象范型提供了非常有效的运行时支持。但是它的静态特性在某些问题领域是不灵活的。图形用户界面编程是一个既需要运行时效率又需要高度灵活性的领域。Qt通过结合c的速度和Qt对象模型的灵活性提供了这一点。 Qt将这些特性添加到c中: 一个非常强大的…

DNS协议(DNS规范、DNS报文、DNS智能选路)

目录 DNS协议基本概念 DNS相关规范 DNS服务器的记录 DNS报文 DNS域名查询的两种方式 DNS工作过程 DNS智能选路 DNS协议基本概念 DNS的背景 我们知道主机通信需要依靠IP地址,但是每次通过输入对方的IP地址和对端通信不够方便,IP地址不好记忆 因此提…

【国产云 OS】KoyarchOS:实现稳定性与兼容性的行业标杆操作系统

文章目录 一、前言二、CentOS 谢幕、国内操作系统崛起2.1 CentOS 的前世今生2.2 创新操作系统崛起 三、浪潮信息 KeyarchOS 操作系统3.1 认识 KeyarchOS 操作系统3.2 KeyarchOS 产品优势3.2.1 稳定可靠3.2.2 广泛兼容3.2.3 平滑迁移3.2.4 场景增强 3.3 KeyarchOS 支持多场景优化…

CAD画图-模型和布局区别,视图命令MV使用(用于局部放大显示)

模型和布局的图像区别 模型的图像: 是我们常编辑的cad文件,我们可以对里面内容进行编辑和测量等操作 布局的图像:为了可以更好的看到每个部件的相对位置,但对于里面的点位的标注就不行了,但可以对图像中的某些部位进行…

思维模型 移情效应

本系列文章 主要是 分享 思维模型,涉及各个领域,重在提升认知。情感迁移,爱屋及乌。 1 移情效应的应用 1.1 移情效应在市场营销中应用-多芬(Dove)“真美运动” 多芬(Dove)是一家知名的个人护理…

一起学习:大型语言模型(LLM)中的QKV(Query, Key, Value)和多头注意力机制

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

CentOS最小化安装后怎么转图形界面/可视化桌面?

文章目录 1、命令行和图形界面切换方式一方式二 2、最小化安装转桌面1-设置网络2-测试网络3-更新文件4-安装图形5-查看默认6-设置默认 界面效果参考视频 1、命令行和图形界面切换 如果安装的是最小化,那么init 5 (进入图像化桌面)命令是无效的 方式一 1.如果在命…

基于STM32 HAL库的光电传感器驱动程序实例

本文将使用STM32 HAL库编写一个光电传感器的驱动程序示例。首先,我们会介绍光电传感器的工作原理和应用场景。然后,我们将讲解如何选择合适的STM32芯片和光电传感器组合。接下来,我们会详细介绍使用STM32 HAL库编写光电传感器驱动程序的基本步…

【Rust日报】2023-12-04 slint 成功案例

slint 成功案例 SK Signet是美国领先的电动车充电解决方案提供商,推出了适用于其电动车充电桩的新型HMI(人机界面)。支持15英寸和32英寸触摸屏。 该HMI由Slint制作,为充电站运营商提供了额外的商机。SK Signet经理Sang-Baek Lee表…

【ArcGIS Pro微课1000例】0049:根据坐标快速定位(创建点位)的常见方法

文章目录 一、转到XY1. 闪烁位置2. 平移3. 标记位置二、定位1. 坐标定位2. 添加到图形3. 添加至要素类三、添加XY坐标四、创建点要素一、转到XY 举例:经纬度坐标:113.2583286东, 23.1492340北 。 1. 闪烁位置 输入坐标,点击闪烁位置工具,即可在对应的位置出现一个绿色闪烁…

19、pytest通过mark标记测试函数

官方实例 [pytest] markers slow:marks tests as slow(deselect with -m "not slow")serial# content of test_mark.py import pytestpytest.mark.slow def test_mark_function():print("test_mark_function was invoked")assert 0解读与实操 通过使用p…

同源策略和跨域介绍

浏览器的同源策略阻止读取来自不同来源的资源。这种机制阻止恶意站点读取另一个站点的数据,但它也阻止合法使用。 一般情况下,我们可以通过两种方式解决浏览器的同源策略,JSONP和CORS,CORS解决方案更为通用(推荐)。