数据库实验报告--数据查询.doc

上传人:b**** 文档编号:14764068 上传时间:2023-06-27 格式:DOC 页数:6 大小:51.50KB
下载 相关 举报
数据库实验报告--数据查询.doc_第1页
第1页 / 共6页
数据库实验报告--数据查询.doc_第2页
第2页 / 共6页
数据库实验报告--数据查询.doc_第3页
第3页 / 共6页
数据库实验报告--数据查询.doc_第4页
第4页 / 共6页
数据库实验报告--数据查询.doc_第5页
第5页 / 共6页
数据库实验报告--数据查询.doc_第6页
第6页 / 共6页
亲,该文档总共6页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数据库实验报告--数据查询.doc

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

数据库实验报告--数据查询.doc

计算机与通信工程学院

实验报告

(软件实验用)

课程名称数据库原理与技术

实验项目名称数据查询

年级大三班级信计

学号姓名

同组姓名

实验日期

指导教师签字

一、实验目的:

熟悉和掌握对数据表中数据的查询操作和SQL命令的使用,学会灵活熟练地使用SQL语句的各种形式;

二、实验内容:

1、简单查询操作

(1)列出所有教授的姓名和工资:

SELECT姓名,工资

FROM教工

WHERE职称='教授'

(2)列出教授的所有信息。

SELECT*

FROM教工

WHERE职称='教授'

(3)列出教工表中的系编号并消除重复的元组。

SELECTDISTINCT系编号

FROM教工

(4)已知学分=学时/17,计算每一门课程的学分数。

SELECT课程名称,学时/17AS学分

FROM课程

(5)显示教授的工资和提高10%的工资额。

SELECT姓名,工资,工资*1.1AS'工资*1.1'

FROM教工WHERE职称='教授'

(6)显示田平平同学出生100天的日期。

SELECT姓名,出生年月+100AS'出生年月+100'

FROM学生

WHERE姓名='田平平'

(7)列出教工表中工资在3000元以上的名单。

SELECT姓名

FROM教工

WHERE工资>=3000

(8)列出学生表中1980年1月1日之后出生的学生名单。

SELECT姓名

FROM学生

WHERE出生年月>='1980-1-1'

(9)列出学生表中在1980年1月1日之后出生的男同学名单。

SELECT姓名

FROM学生

WHERE出生年月>='1980-1-1'AND性别='男'

(10)列出教工表中教授或副教授中工资低于3000元的名单。

SELECT姓名

FROM教工

WHERE(职称='教授'OR职称='副教授')AND工资<3000

(11)显示男学生的姓名和所在的系名称。

SELECT姓名,系名称

FROM学生,系

WHERE学生.系编号=系.系编号AND性别='男'

SELECT姓名,系名称

FROM学生R,系S

WHERER.系编号=S.系编号AND性别='男'

(12)列出教工中比姜立伟工资低的姓名和工资。

SELECTR.姓名,R.工资

FROM教工R,教工S

WHERER.工资

(13)查出所有不是教授的教工姓名。

SELECT姓名

FROM教工

WHERE职称NOTLIKE'教授'

(14)检索工资在1000元到2000元范围内的职工信息。

SELECT*FROM职工

WHERE工资BETWEEN1000AND2000

等价于

SELECT*FROM职工

WHERE工资>=1000AND工资<=2000

(15)按学号的升序,显示系编号等于101的学生信息:

SELECT*

FROM学生

WHERE系编号=101

ORDERBY学号

(16)求教工表中教授工资的平均值。

SELECTAVG(工资)AS平均工资

FROM教工

WHERE职称='教授'

(17)求所有教工的工资总和。

SELECTSUM(工资)AS工资总和

FROM教工

(18)找出教工中最高工资和最低工资。

SELECTMAX(工资),MIN(工资)

FROM教工

(19)显示学生中最早和最晚的出生日期。

SELECTMIN(出生日期),MAX(出生日期)

FROM学生

(20)查询学生的总人数。

SELECTCOUNT(*)AS人数

FROM学生

2、复杂查询

(21)如果要统计成绩表中所有选课的学生人数,即不管一名学生选了几门课程,都只计算一次

SELECTCOUNT(DISTINCT(学号))AS人数

FROM成绩

(22)统计学生表中男生和女生的人数。

SELECT性别,COUNT(*)

FROM学生

GROUPBY性别

(23)统计成绩表中,每一门课程的平均成绩。

SELECT课程编号,AVG(分数)

FROM成绩

GROUPBY课程编号

(24)查询教工表中每一种职称的最高工资和最低工资。

SELECT职称,MAX(工资),MIN(工资)

FROM教工

GROUPBY职称

(25)统计成绩表中选修人数超过2以上的课程编号和人数。

SELECT课程编号,COUNT(*)

FROM成绩

GROUPBY课程编号

HAVINGCOUNT(*)>2

(26)列出成绩表中分数在60以上、选课数大于2且平均分超过70的学号、选课数目和平均分。

SELECT学号,COUNT(课程编号),AVG(分数)

FROM成绩

WHERE分数>=60

GROUPBY学号

HAVINGCOUNT(课程编号)>2ANDAVG(分数)>70

(27)统计“CS”系学生的人数;

(28)统计各系学生的人数,结果按升序排列;

(29)按系统计各系学生的平均年龄,结果按降序排列;

(30)查询每门课程的课程名;

(31)查询无先修课的课程的课程名和学时数;

(32)统计无先修课的课程的学时总数;

(33)统计每位学生选修课程的门数、学分及其平均成绩;

(34)统计选修每门课程的学生人数及各门课程的平均成绩;

(35)找出平均成绩在85分以上的学生,结果按系分组,并按平均成绩的升序排

列;

(36)查询选修了“1”或“2”号课程的学生学号和姓名;

(37)查询选修了“1”和“2”号课程的学生学号和姓名;

(38)查询选修了课程名为“数据库系统”且成绩在60分以下的学生的学号、姓名和成绩;

(39)查询每位学生选修了课程的学生信息(显示:

学号,姓名,课程号,课程名,成绩);

(40)查询没有选修课程的学生的基本信息;

(41)查询选修了3门以上课程的学生学号;

(42)查询选修课程成绩至少有一门在80分以上的学生学号;

(43)查询选修课程成绩均在80分以上的学生学号;

(44)查询选修课程平均成绩在80分以上的学生学号;

三、实验平台:

MicrosoftSQLSever

四、设计流程:

1、进入查询分析器,参见进入查询分析器演示。

在查询分析器的命令编辑窗口输入SQL语句,点击执行键►,将执行SQL语句。

参见执行SQL语句的演示。

2、在调试程序过程中,可以用鼠标选择某些要执行的SQL语句,再点击执行键,执行选择的语句。

参见执行SQL语句的演示。

3、注意:

在各个表中插入数据的顺序,首先在父表中插入数据,然后在子表中插入数据。

另外,由于表的定义中包含完整性约束的定义,所以,当主码重复,或者外码不是被参照表的有效值时,系统将拒绝插入的数据。

4、保存调试通过的SQL程序。

五、程序清单:

六、调试和测试结果:

七、教师评语与成绩评定:

5

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

当前位置:首页 > 解决方案 > 学习计划

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

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