1、目的要求1、掌握SELECT子句以及WHERE子句的使用方法。2、学会应用ORDER BY子句。3、掌握5种基本的聚合函数。4、学会分组统计和二次查询。实验内容1、SELECT子句的应用。查看所有学生的信息。select * from student查看所有学生的学号、姓名。select sno,sname from student查看所有学生的学号、姓名,并将输出结果中的列名显示为“学号”、“姓名”。select sno 学号,sname 姓名from student查询所有学生的姓名、出生日期和年龄,并将输出结果中的列名显示为“姓名”、“出生日期”、“年龄”。select sname 姓名
2、,birthday 出生日期,year(getdate()-year(birdthday) 年龄from student运行以下两组SQL语句,看结果有何区别。select sno from scselect distinct sno from scselect sno,grade from scselect distinct sno,grade from scdistinct可以从查询结果中消除重复的行。如果对某列进行查询时,该列中含有NULL值,那么NULL值也会出现在结果集中,Select distinct处理NULL值与处理其他数据一样。2、WHERE子句的应用。查询所有“男”同学生信
3、息。select * from student where ssex=男查询的有1989年和1980年出生的学生的信息。select * from student where birthday between 1989-1-1 and 1990-12-31查询选修了1号课程、2号课程、3号课程的选课情况。select * from sc where cno in(1,23)查询学号为“20080101”同学正在学习的课程。select cno from sc where sno=20080101 and grade is null查询姓“陈”的同学的信息。select * from stude
4、nt where sname like 陈%在Where子句中可以使用算术运算符、逻辑运算符、比较运算符、集合运算符、Like匹配运算符、Is NOT Null测试空值运算符等。3、ORDER BY子句的应用。查询所有学生的姓名,出生日期,并按日期从前向后输出。select sname,birthday from student order by birdthday查询选了“2”号课程的学生的学号、成绩,并按成绩由高到低顺序输出。select sno,grade from sc where cno=order by grade desc查询所有学生信息,结果按性别降序、年龄升序排列。selec
5、t * from student order by ssex desc,birdthday查询成绩在8089分之间的所有学生的选课记录,查询结果按照成绩的降序排列。select * from scwhere grade=80 and grade805、聚合操作与分组统计的应用。查询各个系的学生人数。select sdept,count(sno) from studentgroup by sdept查询选修各门课程的学生人数。select cno,count(sno) from scgroup by cno问题解答WHERE子句与HAVING子句有何不同?HAVING子句和WHERE子句的相似之处就是都定义搜索条件;但是和WHERE子句不同,HAVING子句与组有关,而不是与单个的行有关。思考、练习题用SQL语句完成下列查询。1 查询所有年龄为20岁的男生的信息。2 查询选修1号课程的学生的最高分。3 查询所有名字中含有“王”字的学生的信息。4 查询本学期正在选修3号课程的学生的学号。
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2