数据库实验二三交.docx

上传人:b****3 文档编号:4753014 上传时间:2022-12-08 格式:DOCX 页数:13 大小:696.64KB
下载 相关 举报
数据库实验二三交.docx_第1页
第1页 / 共13页
数据库实验二三交.docx_第2页
第2页 / 共13页
数据库实验二三交.docx_第3页
第3页 / 共13页
数据库实验二三交.docx_第4页
第4页 / 共13页
数据库实验二三交.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

数据库实验二三交.docx

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

数据库实验二三交.docx

数据库实验二三交

山东工商学院

《数据库》实验指导及报告书

2013/2014学年第2学期

姓名:

班级:

指导教师:

 

信电学院

2014

实验二表的简单查询

首先建好一个教师表(如下表)。

然后在此基础上依次进行各种简单查询。

teacher表

教工号

姓名

家庭住址

电话

职称

工资

所在教研室

2111

朱辉生

连云港市

副教授

5800

计算机软件

2112

单建魁

连云港市

讲师

4900

计算机网络

2113

赵启升

连云港市

工程师

4800

计算机网络

2114

胡云

连云港市

助教

3500

计算机软件

2115

葛庆兵

连云港市

助教

3500

计算机体系结构

1.基本查询

(1)打开查询分析器,从teacher表中分别检索出教师的所有信息

(2)查询teacher表中教工号、姓名和职称。

2.查询时改变列标题的显示

从teacher表中分别检索出教师教工号、姓名、家庭住址信息并分别加上‘教师姓名’、‘教工号’、‘家庭住址’等标题信息

3.基于WHERE语句进行数据查询

⑴基于比较条件。

从teacher表中查询出教工号小于2130的教师资料。

⑵基于BETWEEN语句。

从teacher表中查询出教工号界于2100和2130之间的教师资料。

⑶基于IN子句的数据查询。

从teacher表中查询出职称为“教授”或“副教授”的教师的教工号、教师姓名、职称及家庭住址。

语句如下:

⑷基于LIKE子句的查询。

从teacher表中分别检索出姓赵的教师的资料

4.使用TOP关键字查询。

分别从teacher中检索出前2条及前面67%的教师的信息。

5.使用DISTINCT关键字查询。

从teacher表中检索出教师的职称并且要求显示的职称不重复。

6.用计算列查询。

将teacher表中各教师的姓名、教工号及工资按95%发放的信息,将工资按95%发放后列名该为‘预发工资’。

7.使用ORDERBY语句对查询的结果进行排序

使用ORDERBY语句可以对查询的结果进行排序,ASC、DESC分别是升序和降序排列的关键字,系统默认的是升序排列。

从teacher表中查询工资大于4500的教师的教工号、姓名,并按升序排列。

实验三多表查询和子查询

一、实验目的和要求

1.了解查询的概念和方法;

2.掌握查询分析器的使用方法;

3.掌握SELECT语句在单表查询中的应用;

4.掌握复杂查询的使用方法;

5.掌握多表连接的方法;

6.掌握SELECT语句在多表查询中的应用;

7.掌握子查询语句。

二、实验内容和步骤

(一)多表查询

数据库的各个表中存放着不同的数据,用户经常需要用多个表中的数据来组合提炼出所需要的信息,如果一个查询需要对多个表进行操作,就称为联表查询,联表查询的结果集或结果表称为表之间的连接。

联表查询实际上是通过各各表之间共同列的关联来查询数据的,它是关系数据库查询最基本的特征。

按照下表所示,分别在数据库test中构造student、course和student_course三张表,并写入记录。

Student表

列名称

类型

宽度

允许为空

缺省值

主键

学号

Char

8

学生姓名

Nvarchar

8

性别

char

2

年龄

Smallint

班级号

Char

6

入学时间

Smalldatetime

家庭住址

Nvarchar

40

Course表:

列名称

类型

宽度

允许为空

缺省值

主键

课程号

char

10

课程名称

Nvarchar

20

课程总学时

Tinyint

课程学分

Tinyint

Student_course表

列名称

类型

宽度

允许为空

缺省值

主键

课程号

Char

10

学号

Char

8

成绩

Tinyint

1.进行多表查询

从student、course和student_course三张表中检索选修了课程的学生的学号、姓名、课程号、课程名及成绩。

2.用GROUP子句进行查询

如果要在数据检索时对表中数据按照一定条件进行分组汇总或求平均值,就要在SELECT语句中与GROUPBY子句一起使用集合函数。

使用GROUPBY子句进行数据检索可得到数据分类的汇总统计、平均值或其他统计信息。

(1)使用不带HAVING的GROUPBY子句。

 汇总出student_course表中的学生的学号及总成绩

⑵使用带HAVING的GROUPBY子句。

汇总出student_course表中总分大于450分的学生的学号及总成绩

(二)子查询

1.使用IN或NOTIN关键字

使用IN关键字查询出‘jk1’‘dx2’‘dx1’班所有男生的学号、课程号及相应的成绩

 

2.使用EXISTS或NOTEXISTS关键字。

使用EXISTS关键字查询出‘jk1’班选修‘数据结构’课程的学生的学号、姓名;使用NOTEXISTS查询出‘jk1’班没有选修‘数据结构’课程的学生的学号、姓名。

(2)命令:

select学号,学生姓名

fromstudent

where班级号='jk1'

andnotexists

select*

fromcourse,student_course

wherestudent.学号=student_course.学号andcourse.课程号=student_course.课程号and课程名称='数据结构'

结果:

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

当前位置:首页 > PPT模板 > 动物植物

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

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