部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx

上传人:b****2 文档编号:24491367 上传时间:2023-05-28 格式:DOCX 页数:17 大小:17.94KB
下载 相关 举报
部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx_第1页
第1页 / 共17页
部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx_第2页
第2页 / 共17页
部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx_第3页
第3页 / 共17页
部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx_第4页
第4页 / 共17页
部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx

《部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx》由会员分享,可在线阅读,更多相关《部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx(17页珍藏版)》请在冰豆网上搜索。

部分习题参考答案数据库技术与应用SQL Server 张建国清华大学出版社.docx

部分习题参考答案数据库技术与应用SQLServer张建国清华大学出版社

习题二

一、单选题

1.C2.B3.B4.A5.B

6.C7.B8.A9.C10.D

二、填空题

1.操作系统

2.数据库,数据库应用系统

3.概念设计,逻辑设计

4.概念,逻辑数据

5.数据结构,数据操作,完整性约束

6.参照完整性

7.关系模型

8.树状,有向图,关系(二维表)

9.逻辑,物理

10.结构化数据

11.价值密度低

12.完整性约束

三、判断题

1.对2.错3.错4.错5.对

6.错7.错8.对9.错10.错

11.对12.错13.对14.对15.错

习题三

一.单选题

1.C2.B3.B4.C5.B

6.B7.B8.A9.C10.D

二.填空题

1.主文件组2.系统3.系统级4.DROP5.’

6.数据定义7.sp_rename8.Char,69.NULL/NOTNULL

10.至多一个

三.判断题

1.对2.错3.对4.对5.对

6.对7.错8.对9.错10.错

四.应用题

1.

(1)

createdatabase图书出版

(2)

createtable图书

(书号char(10),

类型char(20),

书名char(50),

作者char(30),

单价float,

出版社号char(20)

(3)

altertable图书

dropcolumn类型

altertable图书

add出版日期datetime

(4)

insertinto图书(书号,书名,出版日期,作者,单价,出版社号)

values('B001','大数据时代','1/1/2013','维克多.迈尔.舍恩伯格',33.1,'P002')

(5)

update出版社

set出版社名称='电子工业出版社'

where出版社名称='工业出版社'

(6)

delete图书

where出版社号=(select出版社号from出版社where出版社名称='人民邮电出版社')

(7)

DropTable出版社

2.

(1)

AlterTable出版社

AddConstraintpk1PrimaryKey(出版社号)

(2)

AlterTable出版社

AddConstraintuniq1unique(出版社名称)

(3)

AlterTable图书

AddConstraintfk1foreignkey(出版社号)references出版社(出版社号)

(4)

AlterTable图书

AddConstraintdef1default0For单价

(5)

AlterTable图书

AddConstraintchk1chkeck(单价>=0)

(6)

AlterTable图书

AddConstraintDF_图书_出版日期defaultgetdate()For出版日期

(7)

AlterTable图书

DropConstraintDF_图书_出版日期

习题四

一、填空题

1.查询

2.关系,关系

3.表,视图,链接表

4.FROM

5.投影

6.DISTINCT

7.显示学生表中的所有列

8.top3,top3withties

9.选择

10.year(getdate())-year(出生年月)between18and24,

year(getdate())-year(出生年月)>=18andyear(getdate())-year(出生年月)<=24

11.籍贯isnotnull

12.仅由聚合函数实现的查询,由聚合函数和GROUP共同实现的查询,由聚合函数,GROUP和HAVING共同实现的查询

13.count,sum,avg,max,min

14.一

15.二

16.班级数

17.count(班级)

18.count(籍贯)

19.降序

20.top3withties

21.交

22.并

23.=

24.等值联接

25.内连接,交叉连接,左外连接,右外连接,全外连接

三、SQL命令

1.

select*from课程

2.

select姓名,性别,职称from教师

3.

select学院名称

from学院

where学院编号in(selectdistinct学院编号from学生)

4.

select姓名,year(getdate())-year(出生日期)as年龄,month(出生日期)as出生月份

from教师

5.

select学院名称,right(学院电话,8),学院地址

from学院

6.

select学号,姓名,出生日期,

substring('鼠牛虎兔龙蛇马羊猴鸡狗猪',(year(出生日期)-1900)%12+1,1)as生肖

from学生

7.

select*

from课程

where学分数>=4

8.

select教师编号,姓名

from教师

where(year(getdate())-year(出生日期)between32and48)and(职称in('教授','副教授'))

9.

select学号,姓名,性别,籍贯,出生日期,专业班级

from学生

where籍贯like'四川%'and性别='女'

10.

select学号,姓名,left(籍贯,iif(charindex('省',籍贯)>0,charindex('省',籍贯),charindex('市',籍贯)))as省市

from学生

where姓名in('万刚','金耀亮','付学军','张辉')

11.

select*

from课程

where课程介绍ISNULL

12.

select*

into#选修课程

from课程

where课程性质='选修'

13.

select课堂编号,课堂名称

into成绩未激活

from课堂

where开课年份='2017-2018'and开课学期='一'and成绩激活=0

14.

selectcount(*)as教师总人数

from教师

15.

select课程性质,count(*)as门数

from课程

groupby课程性质

16.

selectcount(课程编号)as课程门数,sum(学分数)as总学分数

from课程

17.

select课堂编号,count(课堂编号)as人数,avg(成绩)as平均分

from选课成绩

groupby课堂编号havingcount(课堂编号)>8

18.

select课程编号,课程名称,学时数,学分数

from课程

orderby学分数desc

19.

select学院编号,专业班级,count(*)as人数

from学生

groupby学院编号,专业班级

orderby学院编号,专业班级desc

20.

select学号,姓名,性别,出生日期

from学生

orderby性别desc,year(getdate())-year(出生日期)

21.

select学号,max(成绩)as最高分,min(成绩)as最低分,avg(成绩)as平均分

from选课成绩

where成绩isnotnull

groupby学号

22.

selectS.学号,姓名,课程名称,成绩

from学生Sinnerjoin

(select*

from选课成绩

where成绩between85and90)asConS.学号=C.学号

innerjoin课堂KTonC.课堂编号=KT.课堂编号

innerjoin课程KConKT.课程编号=KC.课程编号

orderbyS.学号

23.

select课堂编号,课堂名称,开课年份,开课学期,课程编号

into#T003

from课堂

where教师编号='T003'

24.

select学号

from选课成绩

where课堂编号='2017-2018-2-A001'and成绩between80and90

25.

select*

from教师

where教师编号in(select教师编号from课堂where课程编号=

(select课程编号from课程where课程名称='数据库技术与应用')

26.

select课堂名称,平均成绩

from课堂asAinnerjoin

(selecttop3课堂编号,avg(成绩)as平均成绩

from选课成绩

groupby课堂编号

orderby平均成绩desc)asBonA.课堂编号=B.课堂编号

27.

selectS.学号,姓名,成绩

from学生asSinnerjoin

(select学号,成绩

from选课成绩

where课堂编号in(select课堂编号from课堂where课程编号=

(select课程编号from课程where课程名称='理论力学')

)and成绩isnotnull)asConS.学号=C.学号

28.

select课程名称,成绩

from课堂asKT

innerjoin

(select课堂编号,成绩

from选课成绩

where学号=(select学号from学生where姓名='付学军'))asAonKT.课堂编号=A.课堂编号

innerjoin课程asKConKT.课程编号=KC.课程编号

29.

select'副高及以上'as'职称',count(*)as'人数'

from教师

where职称in('教授','副教授')

union

select'其他'as'职称',count(*)as'人数'

from教师

where职称notin('教授','副教授')

30.

select课程名称

from课程

where课程编号in

(select课程编号

from课堂

where课堂编号notin

(select课堂编号from选课成绩where学号=

(select学号from学生where姓名='常思')

))

31.

select姓名,出生日期

from学生

whereleft(cast(出生日期aschar(10)),7)=

left((selectcast(出生日期aschar(10))

from学生

where姓名='邓亦凡'),7)

and姓名<>'邓亦凡'

32.

select*

from

(select专业班级,avg(成绩)as平均成绩

from选课成绩innerjoin课堂on选课成绩.课堂编号=课堂.课堂编号innerjoin学生on选课成绩.学号=学生.学号

where课程编号=(select课程编号from课程where课程名称='数据库技术与应用')

groupby专业班级)asA

whereA.平均成绩>=

(selectavg(成绩)

from选课成绩innerjoin课堂on选课成绩.课堂编号=课堂.课堂编号innerjoin学生on选课成绩.学号=学生.学号

where专业班级='工程力学1701'and课程编号=(select课程编号from课程where课程名称='数据库技术与应用')

)and专业班级<>'工程力学1701'

33.

selectA.课程编号,课程名称,选修人数

from课程asAinnerjoin

(select课程编号,count(课程编号)as选修人数

from选课成绩innerjoin课堂on选课成绩.课堂编号=课堂.课堂编号

groupby课程编号

)asBonA.课程编号=B.课程编号

34.

selectsubstring('鼠牛虎兔龙蛇马羊猴鸡狗猪',(year(出生日期)-1900)%12+1,1)as生肖,count(*)as人数

from学生

groupbysubstring('鼠牛虎兔龙蛇马羊猴鸡狗猪',(year(出生日期)-1900)%12+1,1)

35.

select学生.学号,姓名,成绩

from选课成绩innerjoin课堂on选课成绩.课堂编号=课堂.课堂编号innerjoin学生on选课成绩.学号=学生.学号

where课程编号=(select课程编号from课程where课程名称='理论力学')and成绩>all(

select成绩

from选课成绩innerjoin课堂on选课成绩.课堂编号=课堂.课堂编号innerjoin学生on选课成绩.学号=学生.学号

where专业班级='土木工程1706'and课程编号=(select课程编号from课程where课程名称='理论力学')

)and专业班级<>'土木工程1706'

36.

select学生.学号,姓名,成绩

from选课成绩innerjoin课堂on选课成绩.课堂编号=课堂.课堂编号innerjoin学生on选课成绩.学号=学生.学号

where课程编号=(select课程编号from课程where课程名称='理论力学')and成绩>all(

select成绩

from选课成绩innerjoin课堂on选课成绩.课堂编号=课堂.课堂编号innerjoin学生on选课成绩.学号=学生.学号

where专业班级='土木工程1706'and课程编号=(select课程编号from课程where课程名称='理论力学')

)and专业班级<>'土木工程1706'

and课堂.课堂编号=

(select课堂编号

from课堂

where班级列表like'%土木工程1706%'and课程编号=(select课程编号from课程where课程名称='理论力学')

37.

select课程名称,学分数,学时数

from课程

where课程编号in

(select课程编号

from课堂

where课堂编号in

(select课堂编号

from选课成绩

where学号=(select学号from学生where姓名='常思')))

习题五

一、选择题

1.C2.C3.C4.A5.C6.B

二、填空题

1.CreateUniqueIndex……,Create……ClusteredIndex……

2.索引,视图

3.视图

4.定义

5.视图或部分基表

6.更新

习题六

2.

printdatediff(dd,'2018-1-1',getdate())+1

3.

createprocprodemo1@arg1char(10),@arg2char

(2)

as

select*

from课堂

where开课年份=@arg1and开课学期=@arg2and课堂状态in(0,2)

4.

createprocprodemo2@arg1char(10),@arg2char

(2)

as

select教师编号,姓名

from教师

where教师编号notin(

selectdistinct教师编号

from课堂

where开课年份=@arg1and开课学期=@arg2and课堂状态in(0,2))

5.

createprocprodemo3@cnamevarchar(50)

as

select*

from教师

where教师编号in(

selectdistinct教师编号

from课堂

where课程编号=(select课程编号from课程

where课程名称=@cname)

6.

createprocprodemo4@snamechar(20)

as

select*

from课堂innerjoin课程on课堂.课程编号=课程.课程编号

innerjoin选课成绩on课堂.课堂编号=选课成绩.课堂编号

where学号=(select学号from学生

where姓名=@sname)

7.

createprocprodemo5@tnamechar(20)

as

select*

from课堂innerjoin课程on课堂.课程编号=课程.课程编号

where教师编号=(select教师编号from教师

where姓名=@tname)

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

当前位置:首页 > 人文社科 > 视频讲堂

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

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