SQL编程题复习(24/9/16)
练习题 x40
- 10-74 获取商品表中商品名称含有“pad”的商品
- 10-75 获取指定商品的商品分类名称(多表查询)
- 10-76 为sh_goods表添加一行记录
- 10-77 检索出sh_goods表中每项keyword对应的商品数量,查询结果显示字段依据输出样例设置
- 10-78 查询sh_goods表中id、category_id和name字段
- 10-79 删除sh_goods表中商品分类id不等于3的商品数据
- 10-80 查询sh_goods表中价格在2000到6000元之间的商品编号、名称和价格
- 10-81 查询goods表中价格为NULL的商品信息(!?!)
- 10-82 为sh_goods表添加一行记录,其中:
- 10-83 查询sh_goods表中用户评分score在前20%的商品名称
- 10-84 动态更新员工薪水(==`建议二刷`==)
- 10-85 查询sh_goods表中所有的keyword字段值,要求查询结果中不能包含重复值
- 10-86 查询sh_goods表,先按商品分类category_id升序排列,对于相同分类的商品再按商品价格price降序排列
- 10-87 检索出Department表中编号为“Dp02”的系部对应的系部名称和系部主任
- 10-88 将学号为“1911201”的学生系别改为“经管学院”,班级改为“19经管1”
- 10-89 将学号为“1911203”的学生的联系电话改为“590987”
- 10-90 删除选课表SC中尚无成绩的选课记录
- 10-91 向students表中插入一条记录
- 10-92 插入学号为“2003024”、姓名为“李光”的学生信息
- 10-93 删除学号为“1911102”的学生记录
- 10-94 把“李小鹏”同学的成绩全部删除
- 10-95 查询选修了“0000008”课程的学生的学号及其成绩,查询结果按分数降序排列
- 10-96 检索 sc 表中成绩不及格的学生学号、课号和成绩,并按成绩降序排列
- 10-97 检索出students表中信息学院的男生信息,查询结果按出生日期升序排序,出生日期相同的按生源地降序排序
- 10-98 统计出students表中各系的男、女生人数,结果中包含系别、性别、人数这三个中文列标题
- 10-99 统计出 teachers 表中各系的老师人数,并按人数升序排序,要求结果中列名分别显示“系别”、“教师人数”
- 10-100 检索出course表中“0000010”课程的课名、先修课号和学分记录
- 10-101 检索出 sc 表中有成绩的学生学号和课号的记录
- 10-102 检索出students表中生源地不是“山东”省的学生信息
- 10-103 检索出 sc 表中成绩在80~90分之间的选课成绩情况
- 10-104 检索出 sc 表中成绩为69分、79分或89分的记录
- 10-105 检索出 teachers 表中在1970年1月1日之前出生的男教师信息
- 10-106 检索出students表中所有姓“刘”的学生信息
- 10-107 检索出students表中姓名是两个字的学生信息
- 10-108 检索出students表中非信息学院和机电学院的学生信息
- 10-109 从students表中统计总的学生人数,要求结果中列名显示“人数”
- 10-110 检索出 sc 表中各个课程号及相应的选课人数,要求结果中列名分别显示“课程号”、“选课人数”
- 10-111 检索出students表中姓名中含有“明”字的男生的学生姓名和班级
- 10-112 检索出students表中没有联系电话的学生信息
- 10-113 检索出students表中所有学生的学号、姓名、性别和出生日期的记录
10-74 获取商品表中商品名称含有“pad”的商品
select id,name,price
from goods
where name like '%pad%'
10-75 获取指定商品的商品分类名称(多表查询)
结合sh_goods表和sh_goods_category表,查询商品id为5的商品分类名称
select name
from sh_goods_category
where id in (select category_idfrom sh_goodswhere id=5
)
10-76 为sh_goods表添加一行记录
insert into sh_goods
values(2,3,'钢笔','001','练字必不可少',15,300,3.9,500)
10-77 检索出sh_goods表中每项keyword对应的商品数量,查询结果显示字段依据输出样例设置
select keyword,count(*) goodscount
from sh_goods
group by keyword
10-78 查询sh_goods表中id、category_id和name字段
select id,category_id,name
from sh_goods
10-79 删除sh_goods表中商品分类id不等于3的商品数据
-- 写法一
delete
from sh_goods
where category_id <> 3-- 写法二
-- delete
-- from sh_goods
-- where id not in (
-- select id -- 1.查询category_id=3的商品的id
-- from sh_goods
-- where category_id = 3
-- )
10-80 查询sh_goods表中价格在2000到6000元之间的商品编号、名称和价格
注意此范围包括2000元和6000元的商品
select id,name,price
from sh_goods
where price between 2000 and 6000
10-81 查询goods表中价格为NULL的商品信息(!?!)
-- 正确的SQL语法,但PTA编译不通过
-- select id,name,price
-- from goods
-- where price <=> NULL-- 若使用 <=> NULL 编译不通过,则使用 is NULL
select id,name,price
from goods
where price is NULL
10-82 为sh_goods表添加一行记录,其中:
商品编号:1
商品分类:3
商品名称:2B铅笔
关键词编号:001
商品详情:考试专用
其余字段使用默认值
insert into sh_goods(id,category_id,name,keyword,content)
values(1,3,'2B铅笔','001','考试专用')
10-83 查询sh_goods表中用户评分score在前20%的商品名称
-- MySQL、PostgreSQL、SQLite
-- select name
-- from sh_goods
-- order by score desc
-- limit 2-- MSSQL、SQL Server
select top 2name
from sh_goods
order by score desc-- 不同SQL间的语法存在差异
10-84 动态更新员工薪水(建议二刷
)
- 对当前工资在30万(包括)以上的员工,降薪10%
对当前工资在25万(包括)到28万(包括)之间的员工,加薪20% - 对当前工资在30万(包括)以上的员工,降薪10%
对当前工资在25万(包括)到28万(包括)之间的员工,加薪20%
-- 建议二刷(update、case when ... then ... end)-- 更新 使用update...set
update Salary
set `count` = (case when `count`>=300000 then `count`*0.9when `count` between 250000 and 280000 then `count`*1.2else `count` -- 不变end
)-- update 语法
-- set 列名 =
-- where 条件-- case when 条件 then value1
-- when 条件 then value2
-- ...
-- else value
-- end (取别名)-- 做人要有边界感,做题也是
10-85 查询sh_goods表中所有的keyword字段值,要求查询结果中不能包含重复值
select distinct keyword
from sh_goods
10-86 查询sh_goods表,先按商品分类category_id升序排列,对于相同分类的商品再按商品价格price降序排列
select name,category_id,price
from sh_goods
order by category_id asc,price desc
10-87 检索出Department表中编号为“Dp02”的系部对应的系部名称和系部主任
select DepartmentName,DepartmentHeader
from Department
where DepartmentID='Dp02'
10-88 将学号为“1911201”的学生系别改为“经管学院”,班级改为“19经管1”
update students
set sdept='经管学院',class='19经管1'
where sno='1911201'
10-89 将学号为“1911203”的学生的联系电话改为“590987”
update students
set phone = '590987'
where sno in ('1911203')
10-90 删除选课表SC中尚无成绩的选课记录
delete
from sc
where score <=> null
10-91 向students表中插入一条记录
(“2002031”,“胡静”,“20财管1”,“女”,“2000-3-21”,“黑龙江齐齐哈尔”,“230200200003210023”,“经管学院”,“6583891”)
-- 写法一
-- insert into students(sno,sname,class,ssex,bday,bplace,IDNum,sdept,phone)
-- values("2002031","胡静","20财管1","女","2000-3-21","黑龙江齐齐哈尔","230200200003210023","经管学院","6583891")-- 写法二
insert into students
values("2002031","胡静","20财管1","女","2000-3-21","黑龙江齐齐哈尔","230200200003210023","经管学院","6583891")
10-92 插入学号为“2003024”、姓名为“李光”的学生信息
insert into students(sno,sname)
values('2003024','李光')
10-93 删除学号为“1911102”的学生记录
delete
from students
where sno = '1911102'
10-94 把“李小鹏”同学的成绩全部删除
delete
from sc
where sno in (select snofrom studentswhere sname = '李小鹏'
)
10-95 查询选修了“0000008”课程的学生的学号及其成绩,查询结果按分数降序排列
select sno,score
from sc
where cno='0000008'
order by score desc
10-96 检索 sc 表中成绩不及格的学生学号、课号和成绩,并按成绩降序排列
select sno,cno,score
from sc
where score < 60
order by score desc
10-97 检索出students表中信息学院的男生信息,查询结果按出生日期升序排序,出生日期相同的按生源地降序排序
select *
from students
where ssex='男'
and sdept = '信息学院'
order by bday asc,bplace desc
10-98 统计出students表中各系的男、女生人数,结果中包含系别、性别、人数这三个中文列标题
select sdept 系别,ssex 性别,count(*) 人数
from students
group by sdept,ssex
10-99 统计出 teachers 表中各系的老师人数,并按人数升序排序,要求结果中列名分别显示“系别”、“教师人数”
select tdept 系别,count(*) 教师人数
from teachers
group by tdept
10-100 检索出course表中“0000010”课程的课名、先修课号和学分记录
select cname,cpno,ccredit
from course
where cno = '0000010'
10-101 检索出 sc 表中有成绩的学生学号和课号的记录
select sno,cno
from sc
where not score <=> null
and not point <=> null
10-102 检索出students表中生源地不是“山东”省的学生信息
select *
from students
where not bplace like '%山东%'-- 列名 like '山东' 包含山东
-- not 列名 like '山东' 不包含山东
10-103 检索出 sc 表中成绩在80~90分之间的选课成绩情况
select *
from sc
where score between 80 and 90
10-104 检索出 sc 表中成绩为69分、79分或89分的记录
select *
from sc
where score in (69,79,89)
10-105 检索出 teachers 表中在1970年1月1日之前出生的男教师信息
select *
from teachers
where tsex='男'
and tbirthday < '1970-01-01'
10-106 检索出students表中所有姓“刘”的学生信息
select *
from students
where sname like '刘%'
10-107 检索出students表中姓名是两个字的学生信息
select *
from students
where sname like '__'-- 模糊查询 '__' 表示匹配任意两个字符
10-108 检索出students表中非信息学院和机电学院的学生信息
select *
from students
where sdept not in('信息学院','机电学院')
10-109 从students表中统计总的学生人数,要求结果中列名显示“人数”
select count(*) 人数
from students
10-110 检索出 sc 表中各个课程号及相应的选课人数,要求结果中列名分别显示“课程号”、“选课人数”
selectcno 课程号,count(*) 选课人数
from sc
group by cno
10-111 检索出students表中姓名中含有“明”字的男生的学生姓名和班级
select sname,class
from students
where sname like '%明%'
and ssex='男'
10-112 检索出students表中没有联系电话的学生信息
select *
from students
where phone <=> null
10-113 检索出students表中所有学生的学号、姓名、性别和出生日期的记录
select sno,sname,ssex,bday
from students
相关文章:
SQL编程题复习(24/9/16)
练习题 x40 10-74 获取商品表中商品名称含有“pad”的商品10-75 获取指定商品的商品分类名称(多表查询)10-76 为sh_goods表添加一行记录10-77 检索出sh_goods表中每项keyword对应的商品数量,查询结果显示字段依据输出样例设置10-78 查询sh_go…...
运维工程师面试整理-操作系统
在运维工程师的面试中,操作系统相关的知识通常是重中之重,尤其是Linux/Unix系统。以下是针对操作系统部分的一些详细内容,帮助你更好地准备面试。 1. Linux/Unix 基础 ● 常用命令 ○ 文件和目录管理:ls, cd, cp, mv, rm, mkdir, rmdir, find, grep, awk, sed...

Linux搭建邮箱服务器(简易版)
本章是上一文档的简易版本搭建方式更为快速简洁(只需要两条命令即可搭建),如果想了解更详细一些可以看我上一文档 Linux接发邮件mailx_linux mailx o365-CSDN博客文章浏览阅读857次,点赞25次,收藏19次。本文详细描述了…...

基于SSM的社区爱心捐赠管理系统
作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于JavaSSMVueMySQL的社区爱…...

鸿蒙next web组件和h5 交互实战来了
前言导读 鸿蒙next web组件这个专题之前一直想讲一下 苦于没有时间,周末把代码研究的差不多了,所以就趁着现在这个时间节点分享给大家。也希望能对各位读者网友工作和学习有帮助,废话不多说我们正式开始。 效果图 默认页面 上面H5 下面ArkU…...
甘特图介绍
甘特图(Gantt chart)是一种常用于项目管理和计划安排的图表类型,它以图形的方式展示项目的任务、活动或工作流的时间线。甘特图得名于它的发明者亨利劳伦斯甘特(Henry Laurence Gantt),他在20世纪初开发了这…...

第十一章 【后端】商品分类管理微服务(11.1)——创建父工程
第十一章 【后端】商品分类管理微服务 11.1 创建父工程 项目名称:EasyTradeManagerSystem:Easy 表示简单易用,Trade 表示交易,Manager 表示管理,System 表示系统,强调系统在商品交易管理方面的便捷性,简称 etms。 新建工程 yumi-etms yumi-etms 作为所有模块的父工程,…...
c语言中的“二级指针”与“指针数组”
二级指针 int main() { int a10; int *pa&a; //pa是一级指针 int **ppa&pa; //ppa就是二级指针变量 *说明ppa是指针变量。ppa指向pa的类型是int* rerurn 0; } 二级指针就是用来存放一级指针变量的地址。 *ppa其实访问的就是pa。**ppa其实也就是*pa…...

IDA f5 无法生成伪代码 too big function 的原因之一以及解决方法
IDA 提示 0x00xxxxx: too big function 其中可能的原因可能是因为 c的异常 try catch 导致函数跳转太远导致的 找到地址 B64778 在 jmp ___CxxFrameHandler3上按 “e” 将函数的结尾定在这里 然后再按 f5 函数就已经成功生成了...
OpenCV-上下采样
文章目录 一,简介二、下采样(Downsampling)三、上采样(Upsampling)四、代码实现1.图像读取2.下采样3.上采样4.拉普拉斯金字塔 五、应用 一,简介 高斯金字塔是图像处理、计算机视觉和信号处理中常用的一项技…...
pip install、yum install和conda install三者技术区分
pip install、yum install和conda install在安装系统环境时可以从以下几个方面进行区分选择: 一、适用范围 pip install 主要用于安装 Python 包。适用于 Python 项目中特定的库和工具的安装。如果你的项目是纯 Python 开发,并且需要安装各种 Python 库&…...

【C++指南】作用域限定符 :: 使用详解
💓 博客主页:倔强的石头的CSDN主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:《C指南》 期待您的关注 目录 引言 1. 访问全局变量 2. 命名空间中的成员访问 3. 类的静态成员访问 4. 嵌套命名空间/类中的…...

项目实训:CSS基本布局理解——WEB开发系列38
对CSS学习已经接近尾声,下面你可以对以下两道“小卡拉米”测试进行测试下CSS理解程度。 题 1:基于栅格布局的现代博客首页设计 题目要求: 创建一个博客首页布局,包含一个顶部导航栏、一个主要的内容区域(左侧为博客文…...
springBoot整合easyexcel实现导入、导出功能
本次使用的框架是springboot,使用mybatisplus操作表,使用easyexcel实现表格的导入与导出。 操作步骤 1、导入依赖:(pom.xml) <!-- 查看excel的maven仓库 https://mvnrepository.com/artifact/com.alibaba/easyex…...
代码随想录训练营第35天|逆序背包
46. 携带研究材料 #include <iostream> #include <vector> using namespace std; int main(){int m,n;cin>>m>>n;vector<int> weights(m,0), values(m,0),dp(n1,0);for(int i0; i<m; i){cin>>weights[i];}for(int i0; i<m; i){cin…...

Centos7环境下Hive的安装
Centos7环境下Hive的安装 前言一、安装Hive1.1 下载并解压1.2 配置环境变量1.3 修改配置1. hive-env.sh2. hive-site.xml 1.4 拷贝数据库驱动1.5 初始化元数据库报错 1.6 安装MySQL1.7 启动 二、HiveServer2/beeline2.1 修改Hadoop配置2.2 修改Hive配置2.2 启动hiveserver22.3 …...

??Ansible——ad-hoc
文章目录 一、ad-hoc介绍二、ad-hoc的使用1、语法2、ad-hoc常用模块1)shell模块2)command模块3)script模块4)file模块5)copy模块6)yum模块7)yum-repository模块8)service模块9&#…...

清理Go/Rust编译时产生的缓存
Go Mac 1T的磁盘频频空间高级,发现是/Users/yourname/Library/Caches/go-build 目录占用了大量空间。 此目录保存来自 Go 构建系统的缓存构建工件。 如果目录太大,请运行go clean -cache。 运行go clean -fuzzcache以删除模糊缓存。 当时直接手工清理了…...
【linux】 ls命令
ls 命令是 Linux 和 Unix 系统中用于列出目录内容的命令。它显示指定目录下的文件和子目录列表。如果不指定目录,ls 默认显示当前目录下的内容。 基本用法 ls [选项] [文件或目录...] 无选项:简单地列出当前目录下的文件和目录。文件或目录࿱…...

STM32的寄存器深度解析
目录 一、STM32 寄存器概述 二、寄存器的定义与作用 三、寄存器分类 1.内核寄存器 2.外设寄存器 四、重要寄存器详解 1.GPIO 相关寄存器 2.定时器相关寄存器 3.中断相关寄存器 4.RCC 相关寄存器 五、寄存器操作方法 1.直接操作寄存器 2.使用库函数操作寄存器 六…...

现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...

HashMap中的put方法执行流程(流程图)
1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...
音视频——I2S 协议详解
I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议,专门用于在数字音频设备之间传输数字音频数据。它由飞利浦(Philips)公司开发,以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...

三分算法与DeepSeek辅助证明是单峰函数
前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...
4. TypeScript 类型推断与类型组合
一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式,自动确定它们的类型。 这一特性减少了显式类型注解的需要,在保持类型安全的同时简化了代码。通过分析上下文和初始值,TypeSc…...

篇章二 论坛系统——系统设计
目录 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 1. 数据库设计 1.1 数据库名: forum db 1.2 表的设计 1.3 编写SQL 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 通过需求分析获得概念类并结合业务实现过程中的技术需要&#x…...
Monorepo架构: Nx Cloud 扩展能力与缓存加速
借助 Nx Cloud 实现项目协同与加速构建 1 ) 缓存工作原理分析 在了解了本地缓存和远程缓存之后,我们来探究缓存是如何工作的。以计算文件的哈希串为例,若后续运行任务时文件哈希串未变,系统会直接使用对应的输出和制品文件。 2 …...

C# winform教程(二)----checkbox
一、作用 提供一个用户选择或者不选的状态,这是一个可以多选的控件。 二、属性 其实功能大差不差,除了特殊的几个外,与button基本相同,所有说几个独有的 checkbox属性 名称内容含义appearance控件外观可以变成按钮形状checkali…...

npm安装electron下载太慢,导致报错
npm安装electron下载太慢,导致报错 背景 想学习electron框架做个桌面应用,卡在了安装依赖(无语了)。。。一开始以为node版本或者npm版本太低问题,调整版本后还是报错。偶尔执行install命令后,可以开始下载…...