SQL Server数据库查询实践:从初学者到进阶

5星 · 超过95%的资源 需积分: 21 1 下载量 167 浏览量 更新于2024-07-19 收藏 636KB PDF 举报
"SQL Server数据库常用操作" SQL Server数据库是一个关系型数据库管理系统,广泛应用于数据存储、管理和分析。这里我们探讨的是一些SQL Server中的标准SQL查询操作,这对于初学者理解和掌握数据库操作至关重要。 1. 查询选修课程名称为“税收基础”的学员学号和姓名: 这个查询使用了嵌套的SQL语句,首先从C和SC表中找出所有选修了“税收基础”课程的学号,然后将这些学号与S表进行匹配,从而得到学员的学号和姓名。这涉及到表格之间的连接(JOIN)和WHERE子句的使用。 2. 查询选修课程编号为'C2'的学员姓名和所属单位: 这个查询通过直接将S和SC表联接,然后在WHERE子句中指定课程编号为'C2',来获取相应的学员信息。这种方法更直接,避免了嵌套查询。 3. 查询未选修课程编号为'C5'的学员姓名和所属单位: 这里使用了NOT IN操作符,通过查询SC表中课程编号为'C5'的学号,然后从S表中排除这些学号,得到未选修课程'C5'的学员信息。 4. 查询选修全部课程的学员姓名和所属单位: 这是一个相对复杂的查询,由于每个学员可能有多条成绩记录,所以需要使用DISTINCT去除重复的课程编号。正确的做法是先计算出全部课程的数量,然后找到那些选修课程数量等于全部课程数量的学生,这需要使用RIGHT JOIN、GROUP BY和HAVING子句,以及嵌套的子查询。 5. 查询选修了课程的学员人数: 此查询使用COUNT(DISTINCT [S#])来统计不同学员的学号数量,这将返回只选修过至少一门课程的学员人数。 6. 查询选修课程超过5门的学员学号和所属单位: 这个查询通过COUNT函数和HAVING子句来筛选出选修课程超过5门的学员。HAVING子句允许在GROUP BY之后对分组结果进行过滤。 以上就是SQL Server数据库中的一些常见查询操作,涵盖了表间的连接、嵌套查询、聚合函数(如COUNT)、DISTINCT关键字以及WHERE和HAVING子句的使用。理解并熟练掌握这些操作对于数据库管理和数据分析至关重要。