
数据库实验2:数据查询与统计分析

本实验文档主要涉及数据库操作实践中的数据查询任务,涵盖了多个关键知识点。以下是详细的内容解读:
1. **查询特定年级学生信息**:
- 使用`SELECT`语句查询学生表(`STUDENTS`)中年级为'1'的学生名称,结果按照学号(`sid`)升序排列。默认情况下,不指定排序方式,`ORDER BY` `sid`会默认升序;若想降序排列,则应写为`ORDER BY sid DESC`。
2. **计算合格课程的积点**:
- 通过`WHERE`子句筛选出成绩大于等于60的学生选课记录,然后计算成绩转换为积点`(score-60)*0.1+1`,得到`jidian`字段。
3. **查询课时为特定值的课程**:
- 使用`OR`逻辑运算符筛选出课时(`hour`)为30或60的课程名称。
4. **查找课程名称包含特定字符串的课程**:
- 使用`LIKE`关键字和通配符`%`匹配课程名中包含"数"的课程编号。
5. **获取不重复的选课课程编号**:
- 使用`DISTINCT`关键字确保课程编号列表中不会出现重复,显示所有不同课程号。
6. **计算教师的平均工资**:
- 计算`TEACHERS`表中所有老师的平均工资,结果为`avgSalary`。
7. **查询学生总平均成绩排序**:
- 分组查询每个学生的选课平均成绩(`avgScore`),并按降序排列,以便于找出总平均成绩最高的学生。
8. **统计课程选课人数与平均成绩**:
- 对`CHOICES`表按课程编号(`cid`)分组,计算选课人数(`COUNT(sid)`)和平均成绩(`AVG(score)`).
9. **查找至少选修两门课程的学生**:
- 使用`HAVING`子句过滤出选择课程数量(`COUNT(sid)`)至少为2的学生编号。
10. **获取特定学生的所有课程及其成绩**:
- 通过连接`COURSES`和`CHOICES`表,找出学生编号为'S244157'的学生所选课程的课程名称和成绩。
11. **查找选修数据库课程的学生编号**:
- 再次利用连接查询,筛选出选修了数据库课程(`COURSES`)的学生编号。
这些查询展示了在实际数据库管理中如何有效地提取、筛选和分析数据,包括基本的SQL操作、数据聚合函数的使用以及连接表来获取关联数据。这些知识点对于理解和操作数据库系统至关重要,能够帮助学习者深化对关系型数据库的理解和应用能力。
相关推荐


















雾眠气泡水:)
- 粉丝: 531
最新资源
- 掌握数学阅读技巧:读者指南V
- 蔬菜消费与健康影响关联研究
- 电力储能术语编制说明及赚钱项目分析
- GGNFS 2022:Windows平台下100位大整数快速分解
- 用友U8数据字典详解:开发U8接口参考手册
- 智能合约与React打造的学生社团治理平台
- AMD/NVIDIA显卡GDDR5显存芯片及电路分析
- 肝细胞癌免疫治疗的最新进展
- 网络通讯技术教程第六节压缩文件
- 学生管理系统的开发与应用
- 深入解析Java核心技术:JVM、集合、并发与微服务
- 北向资金量化操作法:5年4倍收益策略
- C语言结构体基础教程压缩包
- Android项目源码合集(165个):学习与设计参考资源
- STM32温湿度采集系统:标准库与HAL库双实现
- C语言文件压缩包赚钱项目解密
- 徐思语2020年实验数据压缩包解析
- Jacoco CLI 工具包使用与操作指南
- 微信小程序商城模板及后台源码,高效易用!
- MaxViT:融合CNN与Transformer的多轴视觉变换器
- Cerberus:Kubernetes和OpenShift集群的监控与故障警报工具
- 目标检测训练:YOLO数据集的构建与应用
- Win10家庭版轻松启用远程桌面共享
- 轻松搭建个人头像壁纸小程序