【数据库原理及应用实验报告2】的初学者可以通过实验学习到数据库查询的基础知识,特别是T-SQL语言的应用。实验主要涵盖了简单查询、子查询、连接查询以及统计查询四种基本操作。
1. **简单查询**:
- 使用`SELECT`语句进行单表查询,如查询数学系(MA)学生的学号和姓名,可以通过`SELECT sno, sname FROM S WHERE S.sdept='MA'`来实现。
- `DISTINCT`关键字用于去除重复的查询结果,例如查询所有选修了课程的学生学号,可以使用`SELECT DISTINCT sno FROM SC WHERE SC.grade > 0`。
- 对查询结果进行排序,如查询课程号为C2的学生学号和成绩并按成绩降序排列,可以使用`SELECT sno, grade FROM SC WHERE CNO='C2' ORDER BY GRADE DESC`。
- `AS`关键字用于重命名输出字段,如查询选修课程号为c2,成绩在80~90之间的学生的学号和成绩,并将成绩乘以0.8输出,`SELECT sno, grade*0.8 AS 分数 FROM SC WHERE CNO='C2' AND GRADE<90 AND GRADE>80`。
2. **子查询**:
子查询通常嵌套在其他查询语句中,用于提供临时的结果集。实验报告中未明确展示子查询的例子,但在实际应用中,子查询可以用于获取满足特定条件的子集,例如找出平均成绩最高的学生的学号。
3. **连接查询**:
- `JOIN`操作用于合并多个表的数据,例如查询每个学生及其选修的课程,通过`SELECT * FROM S JOIN SC ON S.sno=SC.sno JOIN C ON SC.cno=C.cno`实现。
- `JOIN`还可以结合条件进行复杂查询,如查询选修了"数学"且成绩90分以上的学生的学号、姓名和成绩,`SELECT S.sno, sname, grade FROM (S JOIN SC a ON S.sno=a.sno) JOIN C b ON a.cno=b.cno AND grade>90 AND b.cname='数学'`。
4. **统计查询**:
统计查询涉及到`COUNT()`, `AVG()`, `SUM()`, `MAX()`, `MIN()`等聚合函数,虽然报告中未直接体现,但这些函数可用于计算某一列的数量、平均值、总和、最大值或最小值。
实验过程不仅加深了对SQL语言的理解,还锻炼了处理和分析数据的能力。在实际操作中,理解表结构和正确使用各种查询方式是关键。同时,多练习和讨论能有效提高数据库查询的技能。需要注意的是,掌握不同查询方法的灵活性,根据实际需求选择最合适的查询语句,这将有助于提高工作效率。
评论0