实验三数据库的简单查询和连接查询
一、实验目的及要求
1、掌握SELECT语句的基本语法;
2、熟练掌握表的数据简单查询、数据排序;
3、熟练掌握表的连接查询的表示;
4、掌握等值连接与非等值连接、自身连接、外连接以及复合条件连接操
作。
二、实验重点与难点
1、select语句的基本语法格式,执行方式,条件表达式的表示方式;
2、等值与非等值连接、自身连接、外连接以及复合条件连接操作。
三、实验内容
在前面建立的数据库student000的表中进行如下操作;
●查询全体学生的学号和姓名;
select 学号,姓名
from 学生表
●查询全体学生的详细记录;
●查询全体学生的姓名、出生年份和所在系;
select 姓名,2010-年龄,所在系
from 学生表
●查询选修了课程的学生学号;
select 姓名,课程号
from 学生表s,选课表sc
where s.学号=sc.学号
●查询数学系全体学生的姓名;
●查询考试成绩不及格的学生姓名;
●查询年龄在20~23岁(包括20和23岁)之间的学生姓名、年龄
和所在系;
select 姓名,年龄,所在系
from 学生表
where 年龄between 20 and 23;
●查询年龄不在20~23岁之间的学生姓名、年龄和所在系;
●查询指定的两个系的学生姓名和性别、所在系;
●查询都不是指定的两个系的学生姓名和性别、所在系;
select 姓名,性别,所在系
from 学生表
where 所在系<>'数学系' and 所在系<>'计算机系';
●查询所有指定姓氏的学生学号和姓名;
select 学号,姓名
from 学生表
where LEFT(姓名,1)='李';
●查询缺少成绩的学生的学号和课程号;
●查询计算机系年龄在20岁以下的学生姓名;
●查询每个学生及其选课课程的情况;(用等值连接和自然连接两种
方式查询,比较查询结果,分析等值连接和自然连接的区别)select s.*, c.*, sc.*
from 学生表s,课程表c,选课表sc
where s.学号=sc.学号and c.课程号=sc.课程号
order by 姓名;
●求学生的学号、姓名、选课的课程名及成绩;
●求选修了1号课程且成绩为90分以上的学生学号、姓名和成绩;
●查询每一门课的间接选修课(选修课的选修课);
四、特别提示
●在SQL Server2000中,外连接的表示为:
LEFT OUTER JOIN(外连接):包括列表中第一个表中的全部行
RIGHT OUTER JOIN(右连接):包括列表中第二个表中的全部行
FULL OUTER JOIN:包括两个表中所有不满足条件的行。
另外还可使用:*=(左连接)和*=(右连接);
外连接只能用于两个表中,它限制了一个表中的行,而不限制另外一个表中的行,也就是说,某些不满足条件的行也会显示出来。
五、实验报告
实验报告内容包括实验目的、实验原理、使用仪器、实验内容与步骤、实验过程原始记录(数据,图表,计算等)以及实验结果分析和总结。
六、参考文献
邹健. 深入浅出——SQL Server 2000开发、管理与应用实例. 人民邮电出版社,2008