数据查询
一、实验目的
- 观察查询结果, 体会SELECT语句实际应用;
- 要求学生能够在查询分析器中使用SELECT语句进行简单查询。
- 熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。
二、实验要求
- 完成所要求的全部查询。
- 注意操作结果的截图与保存,供撰写实验报告使用。
三、实验内容
…….
所有的查询全部用Transact-SQL语句实现。此部分查询包括投影、选择条件表达、数据排序、使用临时表等。
对EDUC数据库实现以下查询:
将student表中sname为“鲁班”的改为“鲁班七号”。(学生姓名修改,具体数据根据情况而定)
问题:字符信息应该用单引号括起来
结果:
改正查询成功:
1) 查询“儒家”专业的学生学号和姓名;
遇到问题:开始时候想要利用两个表的笛卡尔积构造一个临时的大表供查询,事实证明,此时用clsName作为子查询和最终查询的连接没有成功,因为此时的clsName已经混淆了,反正就是两个表的笛卡尔积反倒把两者的关系搞得一团糟,所以,直接去掉,利用子查询。
改正查询成功:
2) 查询选修课程“0001”且成绩在80~90 之间的学生学号和成绩,并将成绩乘以系数0.75 输出;
3) 查询“0001”课程的成绩高于“赵一”的学生学号和成绩;
4) 查询没有选修“0002”课程的学生姓名。
利用子查询即可完成相应功能。
四、实验步骤
在查询分析器中完成上述所有查询。
具体见内容
五、实验总结
数据的查询方法不唯一,可以探寻优化方法。
1、因为在所建表中未有“计算机应用”专业,所以可用class.specialty=’计算机应用’进行查询。
2、对于问题“2”中的用’distinct‘进行查询,这样做可避免了选课学生重复出现。