SQL进阶:50个精选查询实战

需积分: 1 0 下载量 87 浏览量 更新于2024-09-09 收藏 13KB TXT 举报
本资源提供了一系列关于SQL语言的基础操作和查询示例,涵盖了数据管理和分析的多个方面。以下是根据标题和描述所提炼的重要知识点: 1. **多表联合查询**: 这个SQL语句展示了如何通过`JOIN`操作从两个关联表(SC表)中按条件获取学生分数:首先分别选取001和002课程的学生及其分数,然后筛选出在两个课程中分数更高的学生。`LEFT JOIN`确保了即使学生没有选修某些课程也能包含在结果中。 2. **分组并筛选平均成绩**: `GROUP BY`和`HAVING`语句被用来计算每个学生所有课程的平均成绩,并筛选出平均分超过60分的学生。这用于识别高分学生群体。 3. **多字段聚合查询**: 这个查询返回每个学生的姓名、学号,以及他们选修课程的数量和总分数,有助于分析学生选课行为和成绩分布。 4. **计数特定属性**: 通过`DISTINCT`关键字,这个查询统计了教师表中以特定模式(如以'%'开头)命名的教师数量,适用于查找特定类型的教师。 5. **排除不在特定范围内的学生**: 使用`NOT IN`操作符,查询结果仅包括那些不在特定关联关系(SC、Course和Teacher表)中的学生列表中的学生,即未参加名为'Ҷƽ'教师课程的学生。 6. **存在性子查询与条件匹配**: 查询找出选修了001课程且存在对应002课程的学生,利用`EXISTS`关键字来验证学生是否有双重课程记录。 7. **筛选特定教师关联的学生**: 最后一个查询针对'Ҷƽ'教师的学生进行操作,提取他们的学号和姓名,`IN`和`GROUP BY`结合`HAVING`筛选出与该教师相关的所有学生。 这些SQL语句不仅涵盖了基本的增删改查操作,还包含了更复杂的关联查询和数据分析技巧,有助于理解和掌握SQL在数据库管理中的实际应用。通过练习这些语句,可以提高在实际项目中处理大量数据的能力。