数据库sql查询语句练习2-习题-结果(单世民).docx
《数据库sql查询语句练习2-习题-结果(单世民).docx》由会员分享,可在线阅读,更多相关《数据库sql查询语句练习2-习题-结果(单世民).docx(13页珍藏版)》请在课桌文档上搜索。
1、现在有一教学管理系统,具体的关系模式如下:Student(no,name,sex,birthday,class)TeaCher(no,name,sex,birthday,prof,depart)Course(cno,cname,tno)Score(no,cno,degree)其中表中包含如下数据:COlIrSe表:cnocnametno3-101数据库15-102数学33-103信息系统43-104操作系统63-105数据结构43-106数据处理54-107PaSCaI语言54-108C+74-109java83-245数据挖掘103-111软件工程11Score表:nocnodegree5i
2、!11l3-1056950015-1025550034-1088550043-1057750053-24510050063-1055350034-1094550083-1059850044-1096850103-1058850033-1059850054-1096850023-105881073-105981084-109681093-105881094-109801073-1118850033-11180Student表:nonamesexbirthdayclass李勇男1987-7-220:00:00950015002刘晨女1987-11-150:0.950025003王敏女1987-10
3、-50:00:00950015004李好尚男1987-9-250:00:00950035005李军男1987-7-170:00:00950045006范新位女1987-6-180:00:00950055007张霞东女1987-8-290:00:00950065008赵薇男19876150:00:00950075009钱民将女1987-6-230:00:00950085010孙俪女1987-9-240:00:0095002108赵里男1987-6-150:00:0095007109丘处机男1987-6-230:00:0095008107杨康男1987-9-240:00:0095001Teache
4、r表:nonamesexbirthdayprofdepartEJ李卫男1957-11-50:00:00教授电子工程系2刘备男1967-10-90:00:00副教授math3关羽男1977-9-200:00:00讲师SC4李修男1957-6250:00:00教授elec5诸葛亮男1977-6-150:00:00教授计篁机系6殷素素女1967-1-50:00:00副教授SC7周芷若女1947-2-230:00:00教授SC8赵云男19806130:00:00副教授计算机系9张敏女1985-5-50:00:00助教SC10黄蓉女1967-3-220:00:00副教授SC11张三男1967-3-220
5、:00:00副教授SC根据上面描述完成下面问题:(法窝注意保存脚本,尤其是DDL和DML,以便进行数据复原)DDL1 .写出上述表的建表语句。2 .给出相应的INSERT语句来完成题中给出数据的插入。单表查询3 .以class降序输出student的所有记录(StIIdent表全部属性)命令:select*fromStudentorderbyclassdesc;nonamesexbirthdayclass1I5009i钱民将女1987-06-2300:00:00.000950082109丘处机男1987-06-2300:00:00,000950083108赵里男1987-06-1500:00:
6、00.0009500745008赵薇男1987-06-1500:00:00.0009500755007张霞东女1987-08-2900:00:00.0009500665006范新位女1987-06-1800:00:00,0009500575005李军男1987-07-1700:00:00,0009500485004李好尚男1987-09-2500:00:00.0009500395002刘晨女1987-11-1500:00:00,00095002105010孙俪女1987-09-2400:00:00.0009500211107杨康男1987-09-2400:00:00.0009500112500
7、3王敏女1987-10-0500:00:00.00095001135001李勇男1987-07-2200:00:00,000950014 .列出教师所在的单位depart(不重复)。命令:selectdistinctdepartfromTeacher;5 .列出student表中所有记录的namcsex和class列命令:selectname,sexzclassfromStudent;nameSeXclass1李勇i男950012刘晨女950023王敏女950014李好尚男950035李军男950046范新位女950057张霞东女950068赵薇男950079钱民将女9500810孙丽女950
8、0211赵里男9500712丘处机男9500813杨康男950016 .输出student中不姓王的同学的姓名。命令iselectnamefromStudentexceptselectnamefromStudentwherenamelike,王;或selectnamefromStudentwherenamenotlike王;name1修勇i2刘晨3李好尚4李军5范新位6张霞东7赵薇8钱民将9孙俪10赵里11丘处机12杨康7 .输出成绩为85或86或88或在60-80之间的记录(no,cno,degree)命令:selectno,cnozDEGREEfromScorewheredegree=85
9、ordegree=86ordegree=88ordegreebetween60and808 .输出班级为95001或性别为女的同学(StlIdent表全部属性)命令:select*fromStudentwhereclass=95001orSeX=女;nonamesexbirthdayclass15001李勇男1987-07-2200:00:00,0009500125002刘晨女1987-11-1500:00:00.0009500235003王敏女1987-10-0500:00:00,0009500145006范新位女1987-06-1800:00:00.0009500555007张霞东女198
10、7-08-2900:00:00.0009500665009钱民将女1987-06-2300:00:00.0009500875010孙俪女1987-09-2400:00:00,000950028107杨康男1987-09-2400:00:00.000950019 .以cno升序、degree降序输出score的所有记录。(score表全部属性)命令:select*fromScoreorderbycnoasc,degreedesc;10 .输出男生人数及这些男生分布在多少个班级中命令:selectCOUNT(*),count(distinctclass)fromStudentwhereSeX=男;
11、(Nocolumnname)(Nocolumnname)1Pr5H.列出存在有85分以上成绩的课程编号。命令:selectdistinctcnofromScorewheredegree85;12.输出95001班级的学生人数命令:selectCOUNT(*)fromStudentwhereclass=95001.(Nocolumnname)1区二二二二13.输出43-105,号课程的平均分命令:selectavg(cast(degreeasfloat)fromScorewherecno=3-105,;(Nocolumnname)1ii;一i14.输出student中最大和最小的birthday
12、日期值命令:selectMAX(birthday)zMIN(birthday)fromStudent;(Nocolumnname)(Nocolumnname)1119茄芾而;00;而诵;1987061500:00:00.00015.显示95001闹95004嵬全体学生的全部个人信息(不包括选课)。(StUdent表全部属性)命令:select*fromStudentwhereclass=95001orclass=95004nonamesexbirthdayclass1I5001i李勇男1987-07-2200:00:00,0009500125003王敏女1987-10-0500:00:00,0
13、009500135005李军男1987-07-1700:00:00.000950044107杨康男1987-09-2400:00:00.00095001聚合查询16.输出至少有5个同学选修的并以3开头的课程的课程号,课程平均分,课程最高分,课程最低分。命令:selectcno,avg(cast(degreeasfloat),MAX(degree),MIN(degree)fromScorewherecnolike,3%,groupbycnohavingCOUNT(cno)5;或者:selectcnorAVG(cast(DEGREEasfloat)MAX(degree),MIN(DEGREE)fr
14、omScoregroupbycnohavingCOUNT(cno)=5andcnolike,3%,.cno(Nocolumnname)(Nocolumnname)(Nocolumnname)1IIOS,84.111111985317.输出所选修课程中最低分大于70分且最高分小于90分的学生学号及学生姓名命令:selectStudent.no,namefromStudentjoinScoreonStudent.no=Score.nogroupbyStudent.no,namehavingMAX(Score.degree)70;cno(Nocolumnname)1I3-10588,33333323
15、-11184,00000034-10885.0000004410945.0000005510255.00000020 .输出至少有两名男同学的班级编号。命令:selectclassfromStudentwheresex=,男groupbyclasshavingCOUNT(class)=2;或者tselecta.classfrom(select*fromStudentwheresex=,H)agroupbya.classhavingCOUNT(a.class)=2class1j95001;295007多表查询21 .列出与108号同学同年出生的所有学生的学号、姓名和生日命令:selectno,n
16、ame,birthdayfromStudentwhereyear(birthday)=(selectyear(birthday)fromStudentwhereno=108);或者:selectb.nozb.namezb.birthdayfromStudentajoinStudentbondatediff(YEAR,a.birthdayzb.birthday)=0anda.no=,108,nonamebirthday15001:李勇1987-07-2200:00:00.00025002刘晨1987-11-1500:00:00.00035003王敏1987-10-0500:00:00.00045
17、004李好尚1987-09-2500:00:00.00055005李军1987-07-1700:00:00.00085006范新位1987-06-1800:00:00,00075007张霞东1987-08-2900:00:00,00085008赵薇1987-06-1500:00:00.00095009钱民将1987-06-2300:00:00.000105010孙俪1987-09-2400:00:00.00011108赵里1987-06-1500:00:00.00012109丘处机1987-06-2300:00:00.00013107杨康1987-09-2400:00:00.00022 .列出
18、存在有85分以上成绩的课程名称命令:selectcnamefromCoursewherecnoin(selectdistinctcnofromScorewheredegree85);或selectdistinctcnamefromCoursejoinScoreonCourseo=Scoreowheredegree85;cnamerSi23数据挖掘23 .列出“计算机系”教师所教课程的成绩表(课程编号,课程名,学生名,成绩)。命令:selectCourseozcname,Student.name,DEGREEfromTeacherjoinCourseonTeacher.no=Course.tno
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 sql 查询 语句 练习 习题 结果 单世民
链接地址:https://www.desk33.com/p-1114496.html