实验三数据库查询.docx

上传人:b****4 文档编号:5322107 上传时间:2023-05-08 格式:DOCX 页数:17 大小:2.28MB
下载 相关 举报
实验三数据库查询.docx_第1页
第1页 / 共17页
实验三数据库查询.docx_第2页
第2页 / 共17页
实验三数据库查询.docx_第3页
第3页 / 共17页
实验三数据库查询.docx_第4页
第4页 / 共17页
实验三数据库查询.docx_第5页
第5页 / 共17页
实验三数据库查询.docx_第6页
第6页 / 共17页
实验三数据库查询.docx_第7页
第7页 / 共17页
实验三数据库查询.docx_第8页
第8页 / 共17页
实验三数据库查询.docx_第9页
第9页 / 共17页
实验三数据库查询.docx_第10页
第10页 / 共17页
实验三数据库查询.docx_第11页
第11页 / 共17页
实验三数据库查询.docx_第12页
第12页 / 共17页
实验三数据库查询.docx_第13页
第13页 / 共17页
实验三数据库查询.docx_第14页
第14页 / 共17页
实验三数据库查询.docx_第15页
第15页 / 共17页
实验三数据库查询.docx_第16页
第16页 / 共17页
实验三数据库查询.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

实验三数据库查询.docx

《实验三数据库查询.docx》由会员分享,可在线阅读,更多相关《实验三数据库查询.docx(17页珍藏版)》请在冰点文库上搜索。

实验三数据库查询.docx

实验三数据库查询

实验五数据查询

〖仪器设备〗

每位学生一台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号课程的学生的学号。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2