实验报告数据库.docx

上传人:b****5 文档编号:7363024 上传时间:2023-01-23 格式:DOCX 页数:32 大小:1.05MB
下载 相关 举报
实验报告数据库.docx_第1页
第1页 / 共32页
实验报告数据库.docx_第2页
第2页 / 共32页
实验报告数据库.docx_第3页
第3页 / 共32页
实验报告数据库.docx_第4页
第4页 / 共32页
实验报告数据库.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

实验报告数据库.docx

《实验报告数据库.docx》由会员分享,可在线阅读,更多相关《实验报告数据库.docx(32页珍藏版)》请在冰豆网上搜索。

实验报告数据库.docx

实验报告数据库

实验报告

 

课程名称:

数据库系统原理及技术

实验名称:

数据查询

 

《数据库系统原理及技术》实验报告

课程名称:

数据库系统原理及技术

实验项目名称:

数据查询实验类型:

验证型

一、实验目的和要求

1.掌握SELECT语句的基本语法。

2.掌握子查询的表示。

3.掌握连接查询的表示。

4.掌握SELECT语句的统计函数的作用和使用方法。

5.掌握SELECT语句的GROUPBY和ORDERBY子句的作用和使用方法。

二、实验内容和原理

启动SQLServer查询分析器,利用SQL语句进行查询。

三、实验环境(软硬件及配置)

Windows2000sqlserver2000

四、实验步骤(含实验结果及分析)

1.简单查询

SELECTsno,sname,sex,birthday

FROMstudent

 

 

SELECTsno,sname,CAST(GETDATE()-birthdayASint)/365

ASage

FROMstudent

SELECTsno,sname,sex,birthday

FROMstudent

WHEREdno='6100'

SELECTsno,sname,birthday

FROMstudent

WHEREspno='0805'ANDclassno='0202'

SELECTsno,sname,sex,birthday

FROMstudent

WHEREbirthday>'1989-03-28'

 

SELECT*

FROMteacher

WHEREpno<>'4'

 

SELECTsno,sname

FROMstudent

WHEREsnameLIKE'李%'

 

SELECTsno,sname

FROMstudent

WHEREsnameLIKE'李__'

SELECTsno,sname

FROMstudent

WHEREsnameLIKE'[王黄]%'

 

SELECTsno,sname,sex,birthday

FROMstudent

WHERE(dno='6100')AND(birthday>'1989-01-01')

 

 

 

SELECT*

FROMstudent

WHEREnativeNOTLIKE'榆林%'

 

SELECT*

FROMstudent

WHERECAST(GETDATE()-birthdayASint)BETWEEN6500AND7600

 

SELECTsno,sname,sex,spno

FROMstudent

WHEREspnoIN('0804','0805'')

 

 

SELECTsno,sname,sex,birthday

FROMstudent

ORDERBYbirthdayASC

 

SELECTsno,sname,sex,birthday,dno

FROMstudent

ORDERBYdno,birthdayDESC

 

SELECTsno,sname,sex,birthday,dno

FROMstudent

ORDERBY5,4DESC

SELECTDISTINCTnative

FROMstudent

WHEREdno='6100'

SELECTsnoAS学号,snameAS姓名,sexAS性别

FROMstudent

go

 

SELECTTOP3sno,score

FROMstudent_course

WHEREtcid='1'ORDERBYscoreDESC

 

SELECTCOUNT(*)AS信工学院学生人数

FROMstudent

WHEREdno='6100'

 

 

SELECTCOUNT(*)AS信工学院女学生人数FROMstudentWHEREdno='6100'ANDsex='女'

 

 

SELECTAVG(score)AS平均分,MAX(score)AS最高分,MIN(score)AS最低分FROMstudent_courseWHEREtcid=1

 

SELECTtcidAS课程号,AVG(score)AS平均分,MAX(score)AS最高分,MIN(score)AS最低分FROMstudent_courseGROUPBYtcidORDERBYAVG(score)DESC

 

2.连接查询

SELECTdistinctsnoFROMstudent_courseWHEREid='1'orid='2'

SELECTsnoFROMstudent_courseWHEREtcid='1'

UNIONSELECTsnoFROMstudent_courseWHEREtcid='2'

 

SELECTsc.snoAS'学号',snameAS'姓名',ameAS'不及格课程'

FROMstudentASst,student_courseASsc,teacher_courseAStc,courseAScr

WHEREsc.score<60ANDsc.sno=st.snoANDsc.tcid=tc.tcidANDo=o

SELECTsc.snoAS'学号',snameAS'姓名',COUNT(*)AS'没有及格的门数'

FROMstudent_courseASsc,studentASst

WHEREscore<60ANDst.sno=sc.snoGROUPBYsc.sno,snameHAVINGCOUNT(*)>1

 

SELECTst.sno,st.sname,ame,sc.score

FROMstudentASst,courseAScs,student_courseASsc,teacher_courseAStc

WHEREst.sno=sc.snoANDsc.tcid=tc.tcidANDo=o

 

SELECTst.sno,sname,SUM(credit)AS总学分

FROMstudentASst,student_courseASsc,courseAScs,teacher_courseAStcWHEREscore>60ANDst.sno=sc.snoANDsc.tcid=tc.tcidANDo=o

GROUPBYst.sno,sname

 

 

SELECTst.sno,sname,cname,score,credit

FROMstudentASst,student_courseASsc,courseAScs,teacher_courseAStc

WHEREst.sno=sc.snoANDsc.tcid=tc.tcidANDo=oANDst.sname='张海丽'

 

 

3.嵌套查询

SELECTsno,sname,birthday

FROMstudent

WHEREdno=(SELECTdnoFROMstudentWHEREsname='李红豆')

 

 

SELECTsc.sno,sname,score

FROMstudentASst,student_courseASsc

WHEREsc.tcidIN(SELECTtcidFROMteacher_courseWHEREcno='H61030006')

ANDscore>=(SELECTAVG(score)FROMstudent_course

WHEREtcidIN(SELECTtcidFROMteacher_courseWHEREcno='H61030006'))

ANDst.sno=sc.sno

 

SELECTtop3withtiessc.snoAS'学号',st.snameAS'姓名',AVG(score)AS'平均分'

FROMstudent_courseASsc,studentASst

WHEREsc.snoIN(SELECTsnoFROMstudentWHEREdno='610000')ANDsc.sno=st.sno

GROUPBYsc.sno,st.snameORDERBY'平均分'DESC

 

 

SELECTsno,snameFROMstudentWHEREEXISTS(SELECT*FROM

student_courseASscWHEREsc.sno=student.snoANDtcid='2')AND

EXISTS(SELECT*FROMstudent_courseASscWHEREsc.sno=student.snoANDtcid='2')

 

SELECTsno,sname

FROMstudent

WHERENOTEXISTS(SELECT*FROMstudent_courseASsc

WHEREstudent.sno=sc.snoANDtcid='1')

 

SELECTsno,snameFROMstudentWHEREEXISTS

(SELECT*FROMstudent_courseASscWHEREstudent.sno=sc.snoANDtcidIN

(SELECTtcidFROMteacher_courseAStcWHEREo=

(SELECTcnoFROMcourseWHEREcname='数据结构')))

 

SELECTsno,sname

FROMstudentASst

WHERENOTEXISTS

(SELECT*FROMstudent_courseASsc

WHEREscore<80ANDst.sno=sc.sno)

ANDEXISTS

(SELECT*

FROMstudent_course

WHEREst.sno=sno)

 

SELECTDISTINCTst.sno,sname

FROMstudentASst,student_courseASsc

WHEREst.sno=sc.snoANDsc.snoNOTIN

(SELECTDISTINCTsno

FROMstudent_courseASsc

WHEREscore<80)

 

四、实验作业题

1.SELECT语句的基本使用

(1)根据实验2给出的数据表的结构,查询每个职工的职工号、姓名、缺勤天数信息。

 

 

(2)查询职工号为001的职工的姓名和缺勤天数。

 

(3)查询所有姓“李”的职工的职工号、缺勤理由。

 

(4)找出所有缺勤天数在2~3天之间的职工号。

 

 

2.SELECT语句的高级查询使用

(1)查询缺勤名称为“病假”的职工的职工号和姓名。

 

(2)查找缺勤天数为2天的职工的职工号和缺勤名称。

(3)查询“事假”的总人数。

(4)求各缺勤类别的人数。

 

(5)将各职工的考勤情况按缺勤天数由高到低排序。

五、实验小结

1.通过实验我了解了表的更新操作,即数据的插入、修改和删除,对表数据的操作可以在企业管理器中进行,也可以由T-SQL语句实现。

2.掌握T-SQL中用于对表数据进行插入(INSERT)、修改(UPDATE)和删除(DELETE或TRANCATETABLE)命令的用法。

六、教师评语和成绩

 

教师签名:

年月日

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

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1