实验三数据库查询.docx
- 文档编号:10655772
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:17
- 大小:2.28MB
实验三数据库查询.docx
《实验三数据库查询.docx》由会员分享,可在线阅读,更多相关《实验三数据库查询.docx(17页珍藏版)》请在冰豆网上搜索。
实验三数据库查询
实验五数据查询
〖仪器设备〗
每位学生一台PC机(标准配制,1G内存),装有SQLServer2005(或SQLServer2000);配备一台教师机为上课教师专用;配备一台数字投影,用于实验讲解。
〖分组要求〗
20—35人一组
〖试验学时〗
2学时
〖目的要求〗
1、掌握SELECT子句以及WHERE子句的使用方法。
2、学会应用ORDERBY子句。
3、掌握5种基本的聚合函数。
4、学会分组统计和二次查询。
〖实验内容〗
1、SELECT子句的应用。
查看所有学生的信息。
select*fromstudent
查看所有学生的学号、姓名。
selectsno,snamefromstudent
查看所有学生的学号、姓名,并将输出结果中的列名显示为“学号”、“姓名”。
selectsno学号,sname姓名fromstudent
查询所有学生的姓名、出生日期和年龄,并将输出结果中的列名显示为“姓名”、“出生日期”、“年龄”。
selectsname姓名,birthday出生日期,year(getdate())-year(birdthday)年龄fromstudent
运行以下两组SQL语句,看结果有何区别。
selectsnofromsc
selectdistinctsnofromsc
selectsno,gradefromsc
selectdistinctsno,gradefromsc
distinct可以从查询结果中消除重复的行。
如果对某列进行查询时,该列中含有NULL值,那么NULL值也会出现在结果集中,Selectdistinct处理NULL值与处理其他数据一样。
2、WHERE子句的应用。
查询所有“男”同学生信息。
select*fromstudentwheressex='男'
查询的有1989年和1980年出生的学生的信息。
select*fromstudentwherebirthdaybetween'1989-1-1'and'1990-12-31'
查询选修了1号课程、2号课程、3号课程的选课情况。
select*fromscwherecnoin('1','2','3')
查询学号为“20080101”同学正在学习的课程。
selectcnofromscwheresno='20080101'andgradeisnull
查询姓“陈”的同学的信息。
select*fromstudentwheresnamelike'陈%'
在Where子句中可以使用算术运算符、逻辑运算符、比较运算符、集合运算符、Like匹配运算符、Is[NOT]Null测试空值运算符等。
3、ORDERBY子句的应用。
查询所有学生的姓名,出生日期,并按日期从前向后输出。
selectsname,birthdayfromstudent
orderbybirdthday
查询选了“2”号课程的学生的学号、成绩,并按成绩由高到低顺序输出。
selectsno,gradefromscwherecno='2'
orderbygradedesc
查询所有学生信息,结果按性别降序、年龄升序排列。
select*fromstudent
orderbyssexdesc,birdthday
查询成绩在80-89分之间的所有学生的选课记录,查询结果按照成绩的降序排列。
select*fromsc
wheregrade>=80andgrade<=89
orderbygradedesc
4、聚合函数的应用。
统计学生的平均成绩。
selectavg(grade)fromsc
求学生的最高分、最低分和平均分。
selectmax(grade)最高分,min(grade)最低分,avg(grade)平均分fromsc
求女学生的学生总数。
selectcount(*)
fromstudent
wheressex='女'
查询有多少名学生“2”号课程成绩高于80分。
selectcount(sno)
fromsc
wherecno='2'andgrade>80
5、聚合操作与分组统计的应用。
查询各个系的学生人数。
selectsdept,count(sno)fromstudent
groupbysdept
查询选修各门课程的学生人数。
selectcno,count(sno)fromsc
groupbycno
〖问题解答〗
WHERE子句与HAVING子句有何不同?
HAVING子句和WHERE子句的相似之处就是都定义搜索条件;但是和WHERE子句不同,HAVING子句与组有关,而不是与单个的行有关。
〖思考、练习题〗
用SQL语句完成下列查询。
1查询所有年龄为20岁的男生的信息。
2查询选修1号课程的学生的最高分。
3查询所有名字中含有“王”字的学生的信息。
4查询本学期正在选修3号课程的学生的学号。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 数据库 查询