成都信息工程学院数据库复习资料数据库期末复习资料操作题原.docx
- 文档编号:29361647
- 上传时间:2023-07-22
- 格式:DOCX
- 页数:7
- 大小:17.63KB
成都信息工程学院数据库复习资料数据库期末复习资料操作题原.docx
《成都信息工程学院数据库复习资料数据库期末复习资料操作题原.docx》由会员分享,可在线阅读,更多相关《成都信息工程学院数据库复习资料数据库期末复习资料操作题原.docx(7页珍藏版)》请在冰豆网上搜索。
成都信息工程学院数据库复习资料数据库期末复习资料操作题原
(成都信息工程学院数据库复习资料)数据库期末复习资料-操作题原
where成绩.学号=@学号and总评成绩>=90
end
if((selectconvert(decimal(5,2),avg(convert(decimal(5,2),总评成绩)))from成绩where学号=@学号)年级and年级=2008
2、查询龙泉和航空港校区的班级个数。
select所在地点,count(*)AS班数from班Groupby所在地点
3、查询20XX级学生课程代码为1304的平均总评成绩、总评成绩的最高分和最低分。
selectavg(总评成绩)as平均总评成绩,max(总评成绩)as最高分,min(总评成绩)as最低分from成绩where年级=20XXand课程代码=1304
或
selectavg(总评成绩),max(总评成绩),min(总评成绩)from成绩where年级=20XXand课程代码=1304
4、查找20XX级课程1304总评成绩为100分的学生学号、姓名、性别、专业。
select学号,姓名,性别,专业from学生where学号in(select学号from成绩where年级=20XXand总评成绩=100and课程代码=1304)
或
select学生.学号,姓名,性别,学生.专业from学生innerjoin成绩on学生.学号=成绩.学号where成绩.年级=20XXand总评成绩=100and课程代码=1304
5、查找大气科学专业的学生学号、姓名、性别、年级、进校时间。
select学号,姓名,性别,年级,进校时间from学生where专业=(select专业代码from专业where专业名称='大气科学')
或
select学号,姓名,性别,年级,进校时间from学生innerjoin专业on学生.专业=专业.专业代码where专业名称='大气科学
6、查询学生学号、姓名、性别及所属班全名。
select学号,姓名,性别,班全名from学生innerjoin班On学生.专业=班.所属专业and学生.年级=班.年级and学生.班序号=班.班序号
7、查询总评成绩在50~60分之间的学生学号、姓名、性别、课程代码、总评成绩,并按学号的升序显示。
select学生.学号,姓名,性别,课程代码,总评成绩from学生innerjoin成绩On学生.学号=成绩.学号where总评成绩>50and总评成绩=80
10、将20XX级同学按照总评成绩的平均分降序输出。
select学号,avg(总评成绩)as平均分from成绩where年级=20XXGroupby学号Orderbyavg(总评成绩)Desc
11、查询20XX级课程代码为1304且平均成绩在80分以上的专业代码及平均成绩。
select专业as专业代码,avg(总评成绩)as平均成绩from成绩where年级=20XXand课程代码=1304groupby专业havingavg(总评成绩)>=80
12、查询学号为‘20XX092929’的学生的总评成绩比‘20XX024763’号学生的最高分数还要高的课程代码和总评成绩。
select学号,课程代码,总评成绩from成绩where学号='20XX092929'and总评成绩>All(select总评成绩from成绩where学号='20XX024763')
或
select学号,课程代码,总评成绩from成绩where学号='20XX092929'and总评成绩>(selectmax(总评成绩)from成绩where学号='20XX024763')
13、查询20XX级学生中各门课程的平均总评成绩情况,并按照平均总评成绩降序排列输出。
select课程.课程代码,课程名称,平均成绩,选课人数from课程innerjoin(select课程代码,avg(总评成绩)as平均成绩,count(*)as选课人数from成绩where年级=20XXGroupby课程代码)ASAon课程.课程代码=A.课程代码Orderby平均成绩Desc
14、查找并显示电子信息工程专业20XX级同学计算机文化基础课程的最高分、最低分、平均分。
selectmax(总评成绩)as最高分,min(总评成绩)as最低分,avg(总评成绩)as平均分from成绩where年级=20XXand课程代码=(select课程代码from课程where课程名称='计算机文化基础')and专业=(select专业代码from专业where专业名称='电子信息工程')
或
selectmax(总评成绩)as最高分,min(总评成绩)as最低分,avg(总评成绩)as平均分from成绩innerjoin课程on成绩.课程代码=课程.课程代码where年级=20XXand课程名称='计算机文化基础'and专业=(select专业代码from专业where专业名称='电子信息工程')
或
selectmax(总评成绩)as最高分,min(总评成绩)as最低分,avg(总评成绩)as平均分from成绩innerjoin专业on成绩.专业=专业.专业代码where年级=20XXand课程代码=(select课程代码from课程where课程名称='计算机文化基础')and专业名称='电子信息工程'
15、将成绩表中20XX级平均在85分以上的学生信息复制到表goodbaby。
select学生.学号,姓名,学生.专业,A.平均成绩intogoodbabyfrom学生innerjoin(select学号,avg(总评成绩)as平均成绩from成绩where年级=20XXGroupby学号havingavg(总评成绩)>85)asAon学生.学号=A.学号
16、将成绩表中20XX级平均总评成绩在70分以下且有3门(含3门)以上不及格的学生信息添加到badbaby中(学号,平均成绩,不及格门数)。
select成绩.学号,count(*)as不及格门数,avg(总评成绩)AS平均成绩intobadbabyfrom成绩innerjoin(select学号from成绩where成绩.年级=20XXGroupby学号havingavg(总评成绩)=3或
select成绩.学号,count(*)as不及格门数,avg(总评成绩)AS平均成绩from成绩innerjoin(select学号from成绩where总评成绩=3)ASAon成绩.学号=A.学号where成绩.年级=20XXGroupby成绩.学号havingavg(总评成绩)a.姓名
方法二:
通过链接服务器来完成。
链接服务器设置如下图:
设置完成后,再将“学生”表与链接服务器表内容按照要求比较,并将结果存入“学生注册信息对比”表中。
参考语句如下:
select学生.学号,学生.姓名学生表姓名,a.姓名注册表姓名
into学生注册信息对比from学生,excel...注册信息$a
where学生.学号=a.学号and学生.姓名a.姓名
提示:
查询连接服务器数据表内容时,一定要将电子表格文件关闭。
10、编写存储过程
编写存储过程“学生成绩统计分析”,带一输入参数“@学号”,其开始代码严格如下:
CREATEPROCEDURE学生成绩统计分析 @学号Char(10) AS
要求此存储过程实现的功能是:
根据输入参数“@学号”指定的学生,先计算该生的平均总评成绩(保留2位小数),即在程序中要考虑好变量@平均总评成绩的数据类型,然后:
(1)将该生的学习状况添加到表“学生学习状况”中(其xID列为自动赋值),“评价”列的取值为:
优秀、一般或较差,优秀的标准是平均总评成绩>=90,较差的标准是平均总评成绩=90的课程,并添加到表“优秀课程”表中(其kID列为自动赋值)。
往该表中添加记录的程序示例:
假定@学号中指定学生的@平均总评成绩为,现需将该生总评成绩在70~80间的课程添加到该表中
INSERTINTO优秀课程(学号,课程名称,总评成绩) SELECTC.学号,K.课程名称,C.总评成绩 FROM成绩C,课程K
WHEREC.学号=@学号andC.总评成绩between70and80andK.课程代码=C.课程代码
(3)若平均总评成绩在60分以下,则查询出该学生总评成绩=90then'优秀'whenconvert(decimal(5,2),avg(convert(decimal(5,2),总评成绩)))=90)begin
insertinto优秀课程(学号,课程名称,总评成绩)select成绩.学号,课程名称,总评成绩
from成绩join课程on成绩.课程代码=课程.课程代码
SET@s=@s*@n SET@n=@n+1ENDSELECT@s,@n
21、完成程序依次显示字母
A~Z。
declare@countint,@abcvarchar(100)set@count=0while@count=90then'A'
whenavg(总评成绩)>=80andavg(总评成绩)=70andavg(总评成绩)=60andavg(总评成绩)<70then'D'whenavg(总评成绩)<60then'E'end)
as等级
from成绩WHERE年级=20XXgroupby学号
24、显示今天是第几季度,输出格式为“第一季度”、“第二季度”、“第三季度”、“第四季度”。
declare@季度tinyint
set@季度=datename(q,getdate)select case@季度
when1then'第一季度' when2then'第二季度' when3then'第三季度' when4then'第四季度'End或select
casedatename(q,getdate) when1then'第一季度' when2then'第二季度' when3then'第三季度' when4then'第四季度'End
三、SQL语句组合题目参考:
说明:
【此题也是20XX级在20XX年1月4日星期六考试原题出自这里面,是程序组合的原题,可以理解记忆】
为了能使考试知识点更加全面,前4题基本围绕在多表查询中使用表达式、函数、多条件、排序等设计;后4题的知识点分布在分组统计、动作查询中使用子查询等)
参考数据表结构:
教师(编号,姓名,出生日期,学历)课程(编号,名称,学分)工资(教师编号,日期,应发工资,扣款)授课安排(授课ID,教师编号,授课课程,教室),【授课ID】是自动增长字段,【教师编号】是参照【教师.编号】的外键,【授课课程】是参照【课程.编号】的外键。
带有下划线字段为表的主关键字
1.查询年龄在35岁以下教授“数据库原理”的教师有几位。
Selectcount(*)as人数from课程innerjoin授课安排
on课程.编号=授课安排.授课课程innerjoin教师on教师.编号=授课安排.教师编号 wheredateadd(yy,35,出生日期) 2.将“张晓辉”老师教授课程“数据库原理”的教室原来的“H1210”调整到“H3210”。 Update授课安排set教室='H3210' 3. 4. 5. 6. 7. 8. From授课安排innerjoin课程On课程.编号=授课安排.授课课程Innerjoin教师on教师.编号=授课安排.教师编号 Where姓名=’张晓辉’and授课课程='数据库原理' and教室='H1210' 查询教授数据库相关课程的教师信息,即课程名称含有“数据库”的课程,先按出生日期降序、再按学历升序显示教师编号、姓名、出生日期、学历,教师信息相同的只显示一次。 Selectdistinct教师.编号,姓名,出生日期,学历from课程innerjoin授课安排On课程.编号=授课安排.授课课程 Innerjoin教师on教师.编号=授课安排.教师编号 Where名称like'%数据库%' Orderby出生日期desc,学历asc 查询教授“C语言程序设计”和“数据库原理”两门课程的教师工资信息,显示教师编号,日期,实发工资,其中实发工资为应发工资减去扣款。 Select工资.教师编号,日期,应发工资-扣款(as)实发工资from工资 innerjoin授课安排on工资.教师编号=授课安排.教师编号innerjoin课程on课程.编号=授课安排.授课课程where名称in('C语言程序设计','数据库原理') 为“张晓辉”老师安排编码为“C105”课程的授课教室在“H1104”。 (名为“张晓辉”的教师只有一位) Insertinto授课安排select编号,'C105','H1104' from教师where姓名='张晓辉' 查询每门课程的最小授课ID号,显示课程的编号、名称和最小授课ID。 Select课程.编号,max(课程.名称)名称,min(授课ID)最小授课IDFrom课程innerjoin授课安排on课程.编号=授课安排.授课课程Groupby课程.编号 为讲授课程编号为“C105”的教师制作本月工资表,【日期】取当前时间,【应发工资】和【扣款】取'20XX-01-01'对应“工资”表数据。 Insertinto工资select工资.教师编号,getdate,应发工资,扣款From工资innerjoin授课安排On工资.教师编号=授课安排.教师编号 Where授课课程='C105'and日期='20XX-01-01' 删除教授课程编号为“C101”的教师对应于20XX年1月1日的工资数据。 Deletefrom工资where日期='20XX-01-01' and教师编号in(select教师编号from授课安排where授课课程='C101') 四、数据库设计要用到的命令: selectdistinct学号,姓名,性别,生源省into学生from学生及成绩$selectdistinct课程号,课程名称into课程from学生及成绩$select学号,课程号,总评成绩into成绩from学生及成绩$
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 成都 信息工程学院 数据库 复习资料 期末 操作