SQL编程题复习(24/9/20)

news2024/11/11 5:22:07

练习题 x25

  • 10-120 统计每个班级期末成绩的最高分(Max),显示班级名称、期末最高成绩
  • 10-121 显示没有班导师的班级名称、院系名称
  • 10-122 将电子信息1班(班级编号:08)的班主任编号改为李丽清老师的编号(`PTA题目表述错误`)
  • 10-123 删除所有选修了"数据库"课程的选课记录
  • 10-124 删除选修人数小于6的选课记录(`建议二刷`)
  • 10-125 给订单量最多的员工,加薪1000元(`通过一半`)
  • 10-126 检索没被学生选修的课程编号和课程名称
  • 10-127 统计学校已开设的课程门数
  • 10-128 检索出students表、sc表和course表中"李小鹏"同学所选课程名称
  • 10-129 检索出teacher、teaching、course表中“王珊”老师所授课程的课程名称(`distinct去重`)
  • 10-130 检索出teachers、teaching、sc表中“谭浩强”教师任课的课程号,选修其课程的学生的学号和成绩(`建议二刷`)
  • 10-131 检索出students表和sc表中信息学院学生所选修的课程号和成绩
  • 10-132 检索出teachers表、teaching表和course表中女教师所授课程的课程号和课程名称(`distinct去重`)
  • 10-133 检索出students表、sc表中至少选修2门课程的女生姓名
  • 10-134 检索出students表、sc表中选修“0000011”课程的学生至2050年时平均年龄,要求结果中列名显示“平均年龄”(`不会`)
  • 10-135 检索出students表和sc表中所有学生的选课情况(包括学号,姓名,课号,成绩),结果中包括没有选课的学生
  • 10-136 检索出students表和sc表中没有选课的学生学号和姓名
  • 10-137 检索出students表和sc表中“19信管2”班的学生所选修的课程号
  • 10-138 检索出students表和sc表中“陈晓东”同学所选课程的课号及成绩
  • 10-139 检索出students表中出生日期大于所有女同学出生日期的男同学的姓名及系别
  • 10-140 检索出students表、sc表中信息学院女学生的学生学号、姓名、课号及考试成绩。
  • 10-141 检索出students表、sc表中“陈红”同学所选课程的成绩,列出课号和成绩(不考虑重名)
  • 10-142 检索出teachers 、teaching、course表中“王珊”老师所授课程的课程名称(`distinct去重`)
  • 10-143 查询所授每门课程平均成绩均在70分以上的教师(MSSQL)
  • 10-144 检索Student表中与‘张三’在同一个专业的学生记录(`MSSQL字符匹配`)

10-120 统计每个班级期末成绩的最高分(Max),显示班级名称、期末最高成绩

-- 统计每个班级 期末成绩的最高分
select GName,max(SCScore3) Max
from student,sc,grade
where student.SId=sc.SId
and student.GId=grade.GId
group by GName

-- 依据输出样例分析 需要的表
-- 多表连接、等值连接

10-121 显示没有班导师的班级名称、院系名称

select GName,DName
from grade
left join dept on grade.DId=dept.DId
where TId <=> null

-- 筛选符合输出样例的表
-- 以grade表为主,若TId为空则表示没有班导师

10-122 将电子信息1班(班级编号:08)的班主任编号改为李丽清老师的编号(PTA题目表述错误

update grade
set TId=(select TId from teacher where TName='李丽青')
where GId = '08'
and GName = '电子信息1班'

10-123 删除所有选修了"数据库"课程的选课记录

delete
from sc
where CId in (
    select CId
    from course
    where CName='数据库'
) 

-- 删除所有选修了"数据库"课程的 选课记录

10-124 删除选修人数小于6的选课记录(建议二刷

delete
from sc
where CId in (
    select CId
    from(
        select CId
        from sc
        group by CId
        having count(CId) < 6
    ) temp
)

-- 不能在同一个表中 一边查找一边删除
-- 解决方法为:使用派生表

10-125 给订单量最多的员工,加薪1000元(通过一半

update employee
set Salary= Salary+1000
where Eid = (
    select Eid
    from orders
    group by Eid
    order by sum(QTY) desc
    limit 1
)

-- 做不会

10-126 检索没被学生选修的课程编号和课程名称

select course.cno,cname
from course 
left join score on course.cno=score.cno
where sno <=> null

-- 避免 ambiguous 错误
-- 以course表为基准,sno为空则无人选择

10-127 统计学校已开设的课程门数

select count(*) 开设课程数
from course

10-128 检索出students表、sc表和course表中"李小鹏"同学所选课程名称

select distinct cname
from students,sc,course
where students.sno=sc.sno
and course.cno=sc.cno
and sname='李小鹏'

10-129 检索出teacher、teaching、course表中“王珊”老师所授课程的课程名称(distinct去重

select distinct cname
from teachers,teaching,course
where teachers.tno=teaching.tno
and teaching.cno=course.cno
and tname='王珊'

-- 万能去重!!!

10-130 检索出teachers、teaching、sc表中“谭浩强”教师任课的课程号,选修其课程的学生的学号和成绩(建议二刷

select sc.cno,sno,score
from teachers,teaching,sc
where teachers.tno=teaching.tno
and teaching.cno=sc.cno
and tname='谭浩强'

-- 建议二刷

10-131 检索出students表和sc表中信息学院学生所选修的课程号和成绩

select cno,score
from students,sc
where students.sno=sc.sno
and sdept='信息学院'

10-132 检索出teachers表、teaching表和course表中女教师所授课程的课程号和课程名称(distinct去重

select distinct course.cno,cname
from teachers,teaching,course
where teachers.tno=teaching.tno
and teaching.cno=course.cno
and tsex='女'

-- distinct 去重!!!

10-133 检索出students表、sc表中至少选修2门课程的女生姓名

select sname 
from students
where sno in(
    select sno
    from sc
    group by sno
    having count(cno)>=2
)
and ssex = '女'

-- 审题!!!

10-134 检索出students表、sc表中选修“0000011”课程的学生至2050年时平均年龄,要求结果中列名显示“平均年龄”(不会

select round(avg(年龄),1) 平均年龄
from (
    select sno,2050 - year(bday) 年龄
    from students
    where sno in (
        select sno    -- 1.选修这门课的学号
        from sc
        where cno='0000011'
    )
) temp
 
-- 不会

10-135 检索出students表和sc表中所有学生的选课情况(包括学号,姓名,课号,成绩),结果中包括没有选课的学生

select students.sno,sname,cno,score
from students
left join sc on students.sno=sc.sno

-- 将students 作为主表

10-136 检索出students表和sc表中没有选课的学生学号和姓名

-- select sno,sname
-- from students
-- where sno not in (
--     select sno -- 1.查询选了课的学生
--     from sc
-- )

-- 没有选课的学生

select students.sno,sname
from students
left join sc on students.sno=sc.sno
where cno <=> null

-- 将students表作为主表连接,cno = null为没有选课

10-137 检索出students表和sc表中“19信管2”班的学生所选修的课程号

select cno
from students,sc
where students.sno=sc.sno
and class='19信管2'

10-138 检索出students表和sc表中“陈晓东”同学所选课程的课号及成绩

select cno,score
from students,sc
where students.sno=sc.sno
and sname='陈晓东'

10-139 检索出students表中出生日期大于所有女同学出生日期的男同学的姓名及系别

-- 出生日期 大于所有女同学出生日期 的男同学 的姓名及系别
-- select distinct sname,sdept
-- from students
-- where bday > all(
--     select bday
--     from students
--     where ssex='女'
-- )
-- and ssex='男'


select sname,sdept
from students
where bday > (
    select max(bday)
    from students
    where ssex='女'
)
and ssex='男'

-- 大于所有 或者 比最大的都大

10-140 检索出students表、sc表中信息学院女学生的学生学号、姓名、课号及考试成绩。

select sc.sno,sname,cno,score
from students,sc
where students.sno=sc.sno
and sdept='信息学院' 
and ssex='女'

10-141 检索出students表、sc表中“陈红”同学所选课程的成绩,列出课号和成绩(不考虑重名)

select cno,score
from students
join sc on students.sno=sc.sno
where sname = '陈红'

10-142 检索出teachers 、teaching、course表中“王珊”老师所授课程的课程名称(distinct去重

select distinct cname
from teachers
join teaching on teachers.tno=teaching.tno
join course on teaching.cno=course.cno
where tname='王珊'

-- distinct !!!

10-143 查询所授每门课程平均成绩均在70分以上的教师(MSSQL)

select CNO cno
from sc
group by CNO
having avg(GRADE)>70

-- 1.先处理sc表
-- 平均成绩大于70的cno

10-144 检索Student表中与‘张三’在同一个专业的学生记录(MSSQL字符匹配)

select distinct sno 学号,sname 姓名
from stu
where mno in(
    select mno-- 1.查询张三的专业
    from stu
    where sname = N'张三'
)
-- and not sname = N'张三'
-- and sname <> N'张三'
and sname != N'张三'
-- MSSQL字符串赋值,需要在字符串前面加 N

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【计算机网络 - 基础问题】每日 3 题(十六)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏&…

spring boot启动报错:so that it conforms to the canonical names requirements

springboot 2.x的版本中对配置文件中的命名规范有了强制性的要求&#xff0c;如下图所示中的dataSource属性属于驼峰格式&#xff0c;但是在springboot 2.x中不允许使用驼峰形式。 根据错误提示可知将其使用 - 来分割即可 错误信息的含义&#xff1a;“Canonical names should…

51单片机-红外遥控器(NEC标准)

作者&#xff1a;Whappy 时间&#xff1a;2024.9.20 总结一下&#xff01;基础实验到这儿里就圆满结束&#xff0c;历经25天&#xff0c;将51单片机学完并亲自手敲代码近5000行&#xff0c;在手敲代码过程中&#xff0c;明显感觉的看和敲&#xff0c;明显就是不同的感觉&…

基于PHP的CRM管理系统源码/客户关系管理CRM系统源码/php源码/附安装教程

源码简介&#xff1a; 这是一款基于PHP开发的CRM管理系统源码&#xff0c;全称客户关系管理CRM系统源码&#xff0c;它是由php源码开发的&#xff0c;还附带了一整套详细的安装教程哦&#xff01; 功能亮点&#xff1a; 1、公海管理神器&#xff1a;不仅能搞定公海类型&…

阿里开源多模态大模型Ovis1.6,重塑出海电商AI格局

阿里开源Ovis1.6&#xff1a;多模态领域再夺第一 阿里再一次证明了自己在多模态领域的实力。这一次&#xff0c;阿里国际AI团队开源的多模态大模型Ovis1.6&#xff0c;不仅成功开源&#xff0c;还在多模态评测基准OpenCompass上击败了Qwen2VL-7B、InternVL2-26B和MiniCPM-V-2.…

springboot jar包瘦身

现在的项目结构是业务包引用comomn包&#xff0c;common包里又引用了很多其他的jar包&#xff0c;导致业务包打包出来动则就是一百甚至两百兆&#xff0c;现在要做到把公共的包放出来&#xff0c;放到一个单独的文件夹&#xff0c;业务包里只放业务代码。 现在只需要修改maven …

Python 操作 Arduino 入门

本文翻译整理自&#xff1a;Arduino With Python: How to Get Started https://realpython.com/arduino-python/ 文章目录 一、Arduino平台1、Arduino硬件2、Arduino软件 二、“Hello, World!”与Arduino1、上传眨眼示例草图2、连接外部组件3、使用面包板 三、“Hello, World!”…

【Day02-JS+Vue+Ajax】

1. JS介绍 在前面的课程中&#xff0c;我们已经学习了HTML、CSS的基础内容&#xff0c;我们知道HTML负责网页的结构&#xff0c;而CSS负责的是网页的表现。 而要想让网页具备一定的交互效果&#xff0c;具有一定的动作行为&#xff0c;还得通过JavaScript来实现。那今天,我们就…

Charles抓包工具测试实战

总结 工作原理 主要功能 优点 安装与配置 安装 组件介绍 Charles代理设置 Charles访问控制 客户端 Windows代理设置 MacOS代理设置 IOS手机代理设置 Android手机代理设置 Charles抓包实战 分析问题 抓包 后台出了问题 抓取https数据 全是乱码 Windows证书安装 Charles ht…

项目文件配置

1. 参数配置化 1.1 问题分析 1.2 问题解决 Value 注解通常用于外部配置的属性注入&#xff0c;具体用法为&#xff1a;Value("${配置文件中的key}") 2. yml配置文件 2.1 SpringBoot提供了多种属性配置方式 2.2 常见配置文件格式对比 2.3 yml 基本语法 大小写敏…

如何利用nw.js打包vue项目

引言 最近有一个开发windows桌面应用的需求, 需要将vue项目打包成.exe文件&#xff0c;最好是变成可安装版(非绿色版)。特此记录一下如何通过nw.js将vue项目打包成.exe。可能这种方式不是最优&#xff0c;仅供大家参考&#xff01; nw.js简介&#xff08;以下描述来自nw.js官…

SAP abap-platform-rap-opensap 使用 ABAP RESTful 应用程序编程模型 (RAP)构建应用程序

openSAP 课程“使用 ABAP RESTful 应用程序编程模型 &#xff08;RAP&#xff09; 构建应用程序”的示例。 Description This repository offers optional hands-on exercises for the free openSAP Course Building Apps with the ABAP RESTful Application Programming Mode…

【已解决】华为AR100-S路由器 恢复出厂后,找不到5G wifi的设置

前两帖讨论了华为AR100-S路由器&#xff1a; 一是用电脑浏览器访问web管理界面报错的解决&#xff0c;详情点这里&#xff01; https://blog.csdn.net/weixin_62598385/article/details/142215136 再就是如何回复出厂&#xff0c;也即如何复位&#xff0c; 详情点这里&#xff…

计算机网络nat 映射案列

1 拓扑案列 2 配置 pc 访问外网 # interface LoopBack192 ip address 192.168.1.1 255.255.255.0 # interface Vlan-interface1 ip address 10.1.1.1 255.255.255.0 # # ip route-static 0.0.0.0 0 10.1.1.2 # local-user admin class manage password hash $h$6$0XD4lC…

前端组件库

vant2现在的地址 Vant 2 - Mobile UI Components built on Vue

sqli-lab靶场学习(四)——Less11-14(post方法)

前言 第1-10关都是get方法&#xff0c;本关开始进入post方法。其实post也好get也好&#xff0c;本质都差不多&#xff0c;使用的技巧也基本相同。 Less11 第11关打开是一个输入用户名密码的界面 显然登陆对话框会使用post方式提交&#xff0c;这里我们尝试在Username一栏通过…

【软件基础知识】什么是 API,详细解读

想象一下,你正在使用智能手机上的天气应用。你打开应用,瞬间就能看到实时天气、未来预报,甚至是空气质量指数。但你有没有想过,这些数据是如何神奇地出现在你的屏幕上的?答案就在三个字母中:API。 API,全称Application Programming Interface(应用程序编程接口),是现代软件世…

大数据最新面试题(持续更新)

2024大数据面试题 什么是Hbase&#xff1f;它与Hadoop的关系是什么&#xff1f; Hbase是一个开源的分布式数据库&#xff0c;基于Hadoop的HDFS&#xff0c;用于大数据存储和处理。它提供了高性能的读写能力和可扩展性。 Hbase的架构是什么&#xff1f; Hbase的架构由Region…

C++11——lambda

lambda lambda的介绍lambda的使用lambda的细节->捕捉列表 lambda的介绍 lambda是匿名函数&#xff0c;再适合的场景去使用可以提高代码的可读性。 场景&#xff1a; 假设有一个Goods类需要进行按照价格、数量排序 class Goods {string name;size_t _price;//价格int num;/…

大模型推理性能优化

LLM 推理的核心指标 首 Token 延迟(决定了用户体验) 延迟:从输入到输出最后一个 token 的延迟 吞吐量:每秒针对所有请求生成的 token 数(针对所有并发请求) 推理的性能卡点 1. KV-Cache 大小导致并发能力受限 LLM推理的过程是一个自回归的过程,前 i 次的token会作为…