SQL server 数据库练习题及答案(练习2)
使用你的名字创建一个数据库
创建表:
数据库中有三张表,分别为student,course,SC(即学生表,课程表,选课表)
问题:
--1.分别查询学生表和学生修课表中的全部数据。
--2.查询成绩在70到80分之间的学生的学号、课程号和成绩。
--3查询C01号课程成绩最高的分数
--4.查询学生都选修了哪些课程,要求列出课程号。
--8.查询修了C02号课程的所有学生的平均成绩、最高成绩和最低成绩。
--9.统计每个系的学生人数。
--10.统计每门课程的修课人数和考试最高分。
--11.统计每个学生的选课门数,并按选课门数的递增顺序显示结果。
--12.统计选修课的学生总数和考试的平均成绩。
--13.查询选课门数超过2门的学生的平均成绩和选课门数。
--14.列出总成绩超过200分的学生,要求列出学号、总成绩。
--16.查询选修了VB号课程的学生的姓名和所在系。
--17.查询成绩80分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果。
--18.查询计算机系男生修了"数据库基础"的学生的姓名、性别、成绩。
--19.查询哪些学生的年龄相同,要求列出年龄相同的学生的姓名和年龄。
--20.查询哪些课程没有人选,要求列出课程号和课程名。
--21.查询有考试成绩的所有学生的姓名、修课名称及考试成绩
--22.分别查询信息系和计算机系的学生的姓名、性别、修课名称、修课成绩,并要求将这两个查询结果合并成一个结果集,并以系名、姓名、性别、修课名称、修课成绩的顺序显示各列。
--//此题用到了并union查询
--23.用子查询实现如下查询:
--(1) 查询选修了C01号课程的学生的姓名和所在系。
--(2) 查询数学系成绩80分以上的学生的学号、姓名。
--(3) 查询计算机系学生所选的课程名.
--24.将计算机系成绩高于80分的学生的修课情况插入到另一张表中,分两种情况实现:
--(1) 在插入数据过程中建表。
--(2) 先建一个新表,然后再插入数据。
--25.删除修课成绩小于50分的学生的修课记录
--26.将所有选修了"c01"课程的学生的成绩加10分。
答案:
/*创建数据库*/
create database gaohongyuan
on primary
(name="gaohongyuan_data",
filename="c:\gao\gaohongyuan_data.mdf",
size=8MB,
maxsize=100MB,
filegrowth=10%)
log on
(name="gaohongyuan_log.ldf",
filename="c:\gao\gaohongyuan_log.ldf",
size=1MB,
filegrowth=10%)
use gaohongyuan/*切换数据库*/
/*创建学生表*/
create table student(
Sno varchar(20) primary key not null,
Sname varchar(32) not null,
Ssex varchar(2) default('男'),
Sage int check(Sage>=0 and Sage<=100),
Sdept varchar(32) not null
)
go
/*创建课程表*/
create table course(
Cno varchar(20) primary key not null,
Cname varchar(32) unique not null,
Hours int check(Hours>0) not null
)
go
/*创建选课表*/
create table SC(
Sno varchar(20) references student(Sno),
Cno varchar(20) references course(Cno),
Grade int check(Grade>=0 and Grade<=100) null
)
go
/*插入数据*/
select * from student/*查询语句*/
insert student values
('9512101','李勇','男',19,'计算机系'),
('9512102','刘晨','男',20,'计算机系'),
('9512103','王敏','女',20,'计算机系'),
('9521101','张立','男',22,'信息系'),
('9521102','吴宾','女',21,'信息系'),
('9521103','张海','男',20,'信息系'),
('9531101','钱小力','女',18,'数学系'),
('9531102','王大力','男',19,'数学系')
go
select * from course/*查询语句*/
insert course values
('C01','计算机文化学',70),
('C02','VB',90),
('C03','计算机网络',80),
('C04','数据库基础',108),
('C05','高等数学',180),
('C06','数据结构',72)
go
select * from SC/*查询语句*/
insert SC(Sno,Cno,Grade) values
('9512101','C01',90),
('9512101','C02',86),
('9512101','C06',null),
('9512102','C02',78),
('9512102','C04',66),
('9512102','C01',82),
('9512102','C02',75),
('9512102','C04',92),
('9512102','C05',50),
('9521103','C02',68),
('9521103','C06',null),
('9531101','C01',80),
('9531101','C05',95),
('9531102','C05',85)
go
--1
select * from student
select * from SC
select * from course
--2
select Sno 学号,Cno 课程号,Grade 成绩 from SC where Grade between 70 and 80
--3
select Cno,max(Grade) from SC where Cno='C01' group by Cno
--4
select Sname,Cname,co.Cno from student st join SC on st.Sno=SC.Sno join course co on co.Cno=SC.Cno
--8
select Sname 姓名,avg(Grade) 平均分,max(Grade) 最高分,min(Grade) 最低分 from student st join SC on st.Sno=Sc.Sno where Cno='C02' group by Sname
--9
select Sdept,count(Sdept) from student group by Sdept
--10
select Cname,count(SC.Cno),max(Grade) from SC join course co on SC.Cno=co.Cno group by Cname
--11
select Sname,count(SC.Cno) from student st join SC on SC.Sno=st.Sno group by Sname order by count(SC.Cno) asc
--12
select count(distinct Sno),avg(Grade) from SC
--13
select Sname,avg(Grade),count(SC.Cno) from student st join SC on SC.Sno=st.Sno join course co on SC.Cno=co.Cno group by Sname having count(SC.Cno)>=2
--14
select Sno,sum(Grade) from SC group by Sno having sum(Grade)>200
--16
select Sname,Sdept,SC.Cno,Cname from student st join SC on st.Sno=SC.Sno join course co on co.Cno=SC.Cno where Cname='VB'
--17
select Sname,SC.Cno,Grade from student st join SC on st.Sno=SC.Sno order by Grade desc
--18
select Sname,Ssex,Cname,Grade from student st join SC on st.Sno=SC.SNo join course co on co.Cno=SC.Cno where Cname='数据库基础'
--19
select sname,sage from student where sage in (select Sage from student group by sage having count(Sage)>1)
--20
select distinct SC.Cno,Cname from SC left join course co on SC.Cno=co.Cno
--21
select Sname,Cname,Grade from student st join SC on st.Sno=SC.Sno join course co on co.Cno=SC.Cno where Grade is not null
--22
select Sname 姓名,Ssex 性别,Cname 修课名称,Grade 修课成绩,Sdept 系别 from student st join SC on st.Sno=SC.Sno join course co on co.Cno=SC.Cno where Sdept='信息系'
union select Sname 姓名,Ssex 性别,Cname 修课名称,Grade 修课成绩,Sdept 系别 from student st join SC on st.Sno=SC.Sno join course co on co.Cno=SC.Cno where Sdept='计算机系'
--23
----1
select Sname,Sdept,Cno from student st join SC on st.Sno=SC.Sno where Cno='C01'
----2
select SC.Sno,Sname,Grade from student st join SC on st.Sno=SC.Sno where Grade>=80
----3
select Sname,Sdept,Cname from student st join SC on st.Sno=SC.Sno join course co on co.Cno=SC.Cno where Sdept='计算机系'
--24
----1
select * into SC1 from SC where Grade>80
select * from SC1
----2
create table SC2(
Sno varchar(20) references student(Sno),
Cno varchar(20) references course(Cno),
Grade int check(Grade>=0 and Grade<=100) null
)
insert into SC2 select * from SC where Grade>80
select * from SC2
--25
delete from SC where Grade<50
--26
update SC set Grade=Grade+10 where Cno='C01'
相关文章:

SQL server 数据库练习题及答案(练习2)
使用你的名字创建一个数据库 创建表: 数据库中有三张表,分别为student,course,SC(即学生表,课程表,选课表) 问题: --1.分别查询学生表和学生修课表中的全部数据。--2.查询成绩在70到80分之间…...
minicube搭建golang容器服务
引言 最近在自己电脑上搭建一个小型k8s环境,以学习云原生相关内容。这里我主要分为三部分记录: 容器及容器编排理论环境安装相关rpcx服务实战 还在调试中,先总结整理下,这里后续补充上我的github工程链接。 一、容器及容器编排理…...

图片批量处理:图片批量缩放,高效调整尺寸的技巧
在数字媒体时代,图片处理已是日常生活和工作中不可或缺的一部分。有时候要批量处理图片,如缩放图片尺寸,以满足不同的应用需求。现在一起来看看办公提效式具如何高效的将图片批量处理方法,快速、准确地批量调整图片尺寸操作。 下…...

直接插入排序【从0-1学数据结构】
文章目录 💗 直接插入排序Java代码C代码JavaScript代码稳定性时间复杂度空间复杂度 我们先来学习 直接插入排序, 直接排序算是所有排序中最简单的了,代码也非常好实现,尽管直接插入排序很简单,但是我们依旧不可以上来就直接写代码,一定要分析之后才开始写,这样可以提…...

C++/CLI——1简介
C/CLI——1简介 如果你是.net程序员,不免会用到C/C写的库。对于简单的调用,可以直接使用DllImport来完成就可以,详情可参考C#调用C/C从零深入讲解。但是对于复杂的C类和对象,尤其是类似于OCC的大型C项目,DllImport可能…...

C#实现串口通讯
1、官网下载Launch Virtual Serial Port Driver Virtual Serial Port Driver - create and emulate virtual COM port,开个虚拟串口: Pair模式(一对,成双成对的意思,就是COM1向COM2传或者COM2向COM1,好比两台机器的CO…...

NLP论文阅读记录 - 以大语言模型为参考学习总结
文章目录 前言0、论文摘要一、Introduction1.1目标问题1.2相关的尝试1.3本文贡献 二.相关工作2.1文本生成模型的训练方法2.2 基于LLM的自动评估2.3 LLM 蒸馏和基于 LLM 的数据增强 三.本文方法3.1 Summarize as Large Language Models3.1.1 前提3.1.2 大型语言模型作为参考具有…...
前端---资源路径
当我们使用img标签显示图片的时候,需要指定图片的资源路径,比如: <img src"images/logo.png">这里的src属性就是设置图片的资源路径的,资源路径可以分为相对路径和绝对路径。 1. 相对路径 从当前操作 html 的文档所在目录算…...
【2024考研】心情记录
今天是12.26日。距离24考研已经过去了2天,自认为缓过来了,故写下这篇文章。 25日早上简单过了一下答案,但实在是记不住答案了,不知道是我的脑子抵触还是怎的,像一块灰色的布遮住了我的记忆,羞于打开&#x…...

MySQL数据库日志管理和数据的备份及恢复
目录 MySQL日志管理 数据库备份的重要性 数据库备份的分类 从物理与逻辑的角度 从数据库的备份策略角度 常见的备份方法 物理冷备 专用备份工具mysqldump或mysqlhotcopy 启用二进制日志进行增量备份 第三方工具备份 MySQL完全备份与恢复 MySQL完全备份 物理冷备份与…...
node-schedule nodejs定时提醒(并判断段是否是工作日)
概述 工作中有个需求:在特定的时间发送一些消息,也就是说比如在每天的7点发送消息:该起床了。一开始我想用定时器每分钟每分钟的去查当前时间,但好像有点蠢,然后我找到了这个包 使用方法 安装 npm install node-sc…...
LeetCode 75| 前缀和
目录 1732 找到最高海拔 724 找到数组的中心下标 1732 找到最高海拔 class Solution { public:int largestAltitude(vector<int>& gain) {int res 0;int sum 0;for(int num : gain){sum num;res max(res,sum);}return res;} }; 时间复杂度O(n) 空间复杂度O(…...
智能,轻量,高效的爬虫工具 (爬虫宝第一代), HSpider
场景 之前玩爬虫宝一时爽,但是我很快发现了一个致命的问题。就是chat3.5 有时候误判,Claude2 是遇到大一点的html就无法解析,chat4 Api没有申请下来,chat3.5 误判这个可以纠正,但是每次爬取花费的钱都是2刀以上&#…...

IDEA Maven Helper插件 解决jar冲突
Jar包冲突报错 程序抛出java.lang.ClassNotFoundException异常; 程序抛出java.lang.NoSuchMethodError异常; 程序抛出java.lang.NoClassDefFoundError异常; 程序抛出java.lang.LinkageError异常等;Maven Jar包管理机制 在Maven项…...
装饰 Web3 项目的用户交互界面(Web3项目二实战之四)
用户交互界面是Web3项目必不可少的,毕竟,Web3项目最终是面向用户的,所以,Web3项目总得需要一个优美的UI界面,已达到用户在视觉上精彩盛宴。 诚然,一个Web3项目若到了用户交互界面,大体上,这个Web3项目也将告一段落了。 没错,Web3第二个项目,也将终结于本篇,顺势拉开…...

【数据库系统概论】第3章-关系数据库标准语言SQL(3)
文章目录 3.5 数据更新3.5.1 插入数据3.5.2 修改数据3.5.3 删除数据 3.6 空值的处理3.7 视图3.7.1 建立视图3.7.2 查询视图3.7.3 更新视图3.7.4 视图的作用 3.5 数据更新 3.5.1 插入数据 注意:插入数据时要满足表或者列的约束条件,否则插入失败&#x…...

理解io/nio/netty
一、io io即input/output,输入和输出 1.1 分类 输入流、输出流(按数据流向) 字节流(InputStream/OutputStream(细分File/Buffered))、字符流(Reader/Writer(细分File/Buffered/pu…...

旅游品牌网站搭建的作用是什么
我国旅游业规模非常高,各地大小旅游景区也是非常多,尤其节假日更是可以达到峰值,无论周边游还是外地游对所要去的景区,消费者总是需要来回了解很多,浏览器查或旅行社咨询等。 对旅游企业而言,传统线下方式…...

Linux操作系统——进程(五)环境变量
环境变量 有了我们前面的命令行参数的理解基础呢,我们下面进入环境变量这一个部分的内容的学习。 一般在我们安装一些开发工具尤其是有解释器的开发工具的时候,我们呢一般都要配置环境变量,可能都不太清楚自己为什么要配置环境变量…...

西门子博途怎么使用PID_Compact做pid调试
到目前为止,我已经在S7-1200中创建了一个可运行的PLC程序,并在Basic Panel中创建了一个HMI项目来操纵和操作该程序。 引文:博途工控人平时在哪里技术交流博途工控人社群 现在,我们该如何深入的让程序开始逐渐智能化呢,…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
【HTML-16】深入理解HTML中的块元素与行内元素
HTML元素根据其显示特性可以分为两大类:块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...

短视频矩阵系统文案创作功能开发实践,定制化开发
在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...

初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...

Golang——7、包与接口详解
包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...
人工智能 - 在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型
在Dify、Coze、n8n、FastGPT和RAGFlow之间做出技术选型。这些平台各有侧重,适用场景差异显著。下面我将从核心功能定位、典型应用场景、真实体验痛点、选型决策关键点进行拆解,并提供具体场景下的推荐方案。 一、核心功能定位速览 平台核心定位技术栈亮…...

基于开源AI智能名片链动2 + 1模式S2B2C商城小程序的沉浸式体验营销研究
摘要:在消费市场竞争日益激烈的当下,传统体验营销方式存在诸多局限。本文聚焦开源AI智能名片链动2 1模式S2B2C商城小程序,探讨其在沉浸式体验营销中的应用。通过对比传统品鉴、工厂参观等初级体验方式,分析沉浸式体验的优势与价值…...

Java后端检查空条件查询
通过抛出运行异常:throw new RuntimeException("请输入查询条件!");BranchWarehouseServiceImpl.java // 查询试剂交易(入库/出库)记录Overridepublic List<BranchWarehouseTransactions> queryForReagent(Branch…...