SQL查询实战:成绩对比与学生信息汇总
4星 · 超过85%的资源 需积分: 4 32 浏览量
更新于2024-09-17
2
收藏 72KB DOC 举报
本文档提供了一系列SQL查询语句练习,旨在帮助学习者提升对SQL语言的理解和实践能力。以下是每个练习的问题和对应的解决方案:
1. 查询“001”课程比“002”课程成绩高的所有学生的学号:
这个查询通过子查询获取“001”和“002”课程的成绩,然后比较两个查询结果中对应学生的分数,只返回“001”课程分数大于“002”课程分数的学生学号。这样可以筛选出那些在指定课程中有较高表现的学生。
2. 查询平均成绩大于60分的同学的学号和平均成绩:
使用GROUP BY将学生按学号分组,然后计算每个学生的平均成绩,HAVING子句用来筛选出平均成绩大于60分的学生,结果包括学号和平均成绩。
3. 查询所有同学的学号、姓名、选课数、总成绩:
这是一个左外连接查询,将学生表与成绩表联接,根据学号匹配,然后分别统计每个学生的课程数量(使用COUNT函数)和总成绩(使用SUM函数),结果包括学号、姓名以及这些统计数据。
4. 查询姓“李”的老师的个数:
通过DISTINCT关键字去除重复的教师姓名,使用LIKE操作符查找以“李”开头的姓名,统计这样的教师数量。
5. 查询没学过“叶平”老师课的同学的学号和姓名:
这个查询首先找出叶平老师的所有课程,然后从学生表中排除这些课程的授课记录,只保留没有选修过叶平课程的学生信息。
6. 查询学过“001”并且也学过编号“002”课程的同学的学号和姓名:
使用EXISTS子句检查一个学生是否同时选修了“001”和“002”课程,返回符合条件的学生学号和姓名。
7. 查询学过“叶平”老师所教的所有课的同学的学号、姓名:
此查询同样涉及多表联接,找到叶平老师的所有课程,再与学生表联接,找出这些课程的选修学生及其信息。
这些SQL查询涵盖了基本的联接(JOIN)、聚合函数(AVG、COUNT、SUM)、条件筛选(WHERE、HAVING)以及子查询等重要知识点,通过实际操作可以加深对SQL基础结构和功能的理解。
2023-07-07 上传
2019-11-22 上传
2019-07-09 上传
2010-10-23 上传
2023-05-27 上传
2024-07-15 上传
2022-05-18 上传
2021-10-12 上传
nuonuo1905
- 粉丝: 0
- 资源: 12
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录