数据库查询实验:SQL操作与视图查询

需积分: 0 0 下载量 99 浏览量 更新于2024-08-04 收藏 512KB PDF 举报
"本次实验是关于数据库查询的实践,由史文翰同学完成,主要涉及数据库关系表查询和视图查询。实验环境为MySQL 5.7 Command Line on Windows 10。通过一系列的SQL查询操作,加深了对SQL语言的理解,掌握了不同类型的查询语句。" 在实验中,史文翰同学首先进行了数据库关系表查询,这部分包含了以下知识点: 1. **单表查询**:例如查询"数据库原理"课程的学分,使用了`SELECT credit FROM course WHERE course_name = '数据库原理'`。这个查询语句展示了如何从`course`表中选取特定字段`credit`,并根据`course_name`的值进行筛选。 2. **条件查询与排序**:如查询选修课程编号为"C01"的学生学号和成绩,并按成绩降序排列,使用`SELECT stu_no, grade FROM sel WHERE course_no = 'C01' ORDER BY grade DESC`。这里运用了`WHERE`子句来设定条件,`ORDER BY`则用于指定结果的排序方式。 3. **多表连接查询**:实验中可能涉及到多个表的连接查询,如`student`、`course`和`sel`表的自然连接,以便获取学生学号、姓名、课程名称和成绩等完整信息。 4. **复杂查询**:这包括使用分组函数和嵌套查询。例如,查询选修了课程"C01"且成绩高于85分的学生信息,可能涉及到`GROUP BY`和`HAVING`子句,以及嵌套查询的使用。 接着,实验还涉及了视图查询,即对之前创建的视图进行操作。视图是预定义的查询结果,可以简化复杂的查询并提供额外的安全层。在实验中,可能执行了针对这些视图的查询,以验证它们的有效性和实用性。 在实验步骤及结果分析部分,史文翰同学实践了多种查询技巧,如: - 查询特定学号学生的课程编号和成绩,使用了`WHERE`子句对学号进行过滤。 - 查询满足特定条件(如课程编号、成绩范围)的学生信息,这涉及了更复杂的查询逻辑。 - 查询所有学生的信息,通过自然连接合并多个表的数据。 - 使用聚合函数`COUNT()`来查找选修至少三门课程的学生,这涉及到分组统计。 通过这些实验,史文翰同学不仅掌握了基本的SQL查询语句,还学会了如何处理多表查询、视图查询以及更复杂的查询需求,为今后的数据库管理和数据分析工作打下了坚实的基础。