SQL上机实验.docx
《SQL上机实验.docx》由会员分享,可在线阅读,更多相关《SQL上机实验.docx(27页珍藏版)》请在冰豆网上搜索。
![SQL上机实验.docx](https://file1.bdocx.com/fileroot1/2023-1/14/0abdb80a-b050-4cfa-b095-188ee431f342/0abdb80a-b050-4cfa-b095-188ee431f3421.gif)
SQL上机实验
①
检索“王海”同学不学的课程的课程名
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
检索只选修了“C语言”的女学生的学号和姓名
②
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
检索所有选修“C语言”的同学的平均年龄
检索至少有两个同学选修的课程的课程名
③
检索每门课程的选修人数和平均分数
检索选修了全部课程的学生的学号和姓名
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
④
检索至少选修了两门课程的学生的学号和姓名
检索同时选修了“C语言”和“编译原理”的同学的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
⑤
检索没有选修任何课程的学生的学号和姓名
检索所有课程的成绩都在80分以上的同学的学号和姓名
检索全部“女”同学都选修的课程的课程名
⑥
检索有“女”同学选修的课程的课程号和课程名
检索每门课程的选修人数和最高分
检索全部“男”同学都选修的课程的课程名
⑦
检索所有课程的平均分在85分以上的同学的学号和姓名
检索每个同学的选课门数及平均分、最高分、最低分
检索选修了全部课程的学生的学号和姓名
⑧
检索选课门数最多的学生的学号和姓名
检索各科成绩均大于等于该科平均成绩的学生的学号和姓名
检索全部“男”同学都选修的课程的课程名
⑨
检索选修人数最多的课程的课程号和课程名
检索只选修了“C语言”的学生的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
⑩
检索没有选修“数据库原理”的学生的学号和姓名
检索只选修了“数据库原理”的学生的学号和姓名
检索选修了全部课程的学生的学号和姓名
⑾
检索“女”同学都没有选修的课程的课程名
检索只选修了“C语言”的学生的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
⑿
检索至少选修了三门课程的同学的学号
检索选修了全部课程的学生的学号和姓名
检索每门课程的选修人数和最高分
⒀
检索至少有两门课程在60分以上的学生的学号
检索没有选修课程的学生的学号和姓名
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
⒁
检索全部课程都及格的学生的学号和姓名
检索选修人数最多的课程的课程号和课程名
检索只选修了“C语言”的学生的学号和姓名
⒂
检索没有选修“C语言”的学生的学号和姓名
检索每个同学的选课门数及平均分、最高分、最低分
检索选修了全部课程的学生的学号和姓名
⒃
统计每门课程的选修人数和平均分
检索所有课程的成绩都在80分以上的同学的学号和姓名
检索全部“女”同学都选修的课程的课程名
⒄
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少选修了两门课程的学生的学号和姓名
检索同时选修了“C语言”和“编译原理”的同学的学号和姓名
⒅
检索所有课程的平均分在85分以上的同学的学号和姓名
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索选修了全部课程的学生的学号和姓名
⒆
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
检索只选修了“C语言”的女学生的学号和姓名
⒇
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少有两个同学选修的课程的课程名
(21)
检索选课门数最多的学生的学号和姓名
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少选修了三门课程的同学的学号
(22)
检索至少有两门课程在60分以上的学生的学号
检索每个同学的选课门数及平均分、最高分、最低分
检索选修了全部课程的学生的学号和姓名
(23)
检索只选修了“数据库原理”的学生的学号和姓名
检索选修了全部课程的学生的学号和姓名
检索“男”同学和“女”同学都选修的课程的课程号和课程名
(24)
检索至少有两门课程在60分以上的学生的学号
检索每个同学的选课门数及平均分、最高分、最低分
检索选修了全部课程的学生的学号和姓名
(25)
检索选课门数最多的学生的学号和姓名
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少选修了三门课程的同学的学号
(26)
检索只选修了“C语言”的学生的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
检索只有“男”学生选修的课程的课程号和课程名
(27)
检索只选修了“数据库原理”的学生的学号和姓名
检索选修了全部课程的学生的学号和姓名
检索“女”同学都没有选修的课程的课程名
(28)
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
检索只选修了“C语言”的女学生的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
(29)
检索“王海”同学不学的课程的课程名
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
检索只选修了“C语言”的女学生的学号和姓名
(30)
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
检索所有选修“C语言”的同学的平均年龄
检索至少有两个同学选修的课程的课程名
(31)
检索每门课程的选修人数和平均分数
检索选修了全部课程的学生的学号和姓名
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
(32)
检索至少选修了两门课程的学生的学号和姓名
检索同时选修了“C语言”和“编译原理”的同学的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
(33)
检索没有选修任何课程的学生的学号和姓名
检索所有课程的成绩都在80分以上的同学的学号和姓名
检索全部“女”同学都选修的课程的课程名
(34)
检索有“女”同学选修的课程的课程号和课程名
检索每门课程的选修人数和最高分
检索全部“男”同学都选修的课程的课程名
(35)
检索所有课程的平均分在85分以上的同学的学号和姓名
检索每个同学的选课门数及平均分、最高分、最低分
检索选修了全部课程的学生的学号和姓名
(36)
检索选课门数最多的学生的学号和姓名
检索各科成绩均大于等于该科平均成绩的学生的学号和姓名
检索全部“男”同学都选修的课程的课程名
(37)
检索选修人数最多的课程的课程号和课程名
检索只选修了“C语言”的学生的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
(38)
检索没有选修“数据库原理”的学生的学号和姓名
检索只选修了“数据库原理”的学生的学号和姓名
检索选修了全部课程的学生的学号和姓名
(39)
检索“女”同学都没有选修的课程的课程名
检索只选修了“C语言”的学生的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
(40)
检索至少选修了三门课程的同学的学号
检索选修了全部课程的学生的学号和姓名
检索每门课程的选修人数和最高分
(41)
检索至少有两门课程在60分以上的学生的学号
检索没有选修课程的学生的学号和姓名
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
(42)
检索全部课程都及格的学生的学号和姓名
检索选修人数最多的课程的课程号和课程名
检索只选修了“C语言”的学生的学号和姓名
(43)
检索没有选修“C语言”的学生的学号和姓名
检索每个同学的选课门数及平均分、最高分、最低分
检索选修了全部课程的学生的学号和姓名
(44)
统计每门课程的选修人数和平均分
检索所有课程的成绩都在80分以上的同学的学号和姓名
检索全部“女”同学都选修的课程的课程名
(45)
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少选修了两门课程的学生的学号和姓名
检索同时选修了“C语言”和“编译原理”的同学的学号和姓名
(46)
检索所有课程的平均分在85分以上的同学的学号和姓名
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索选修了全部课程的学生的学号和姓名
(47)
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
检索只选修了“C语言”的女学生的学号和姓名
(48)
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少有两个同学选修的课程的课程名
(49)
检索选课门数最多的学生的学号和姓名
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少选修了三门课程的同学的学号
(50)
检索至少有两门课程在60分以上的学生的学号
检索每个同学的选课门数及平均分、最高分、最低分
检索选修了全部课程的学生的学号和姓名
(51)
检索只选修了“数据库原理”的学生的学号和姓名
检索选修了全部课程的学生的学号和姓名
检索“男”同学和“女”同学都选修的课程的课程号和课程名
(52)
检索至少有两门课程在60分以上的学生的学号
检索每个同学的选课门数及平均分、最高分、最低分
检索选修了全部课程的学生的学号和姓名
(53)
检索选课门数最多的学生的学号和姓名
检索每门课程的成绩均高于该门课程平均成绩的学生的学号和姓名
检索至少选修了三门课程的同学的学号
(54)
检索只选修了“C语言”的学生的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
检索只有“男”学生选修的课程的课程号和课程名
(55)
检索只选修了“数据库原理”的学生的学号和姓名
检索选修了全部课程的学生的学号和姓名
检索“女”同学都没有选修的课程的课程名
(56)
检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
检索只选修了“C语言”的女学生的学号和姓名
检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
1检索“王海”同学不学的课程的课程名
ASELECTCNAMEFROMCWHEREC#NOTIN(
SELECTC#FROMSCWHERES#IN(
SELECTS#FROMSWHERESNAME='王海'))
BSELECTCNAMEFROMCWHERENOTEXISTS(
SELECT*FROMSCWHERESC.C#=C.C#ANDSC.S#IN(
SELECTS#FROMSWHERESNAME='王海'))
2检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTEXISTS(
SELECT*FROMCWHERETEACHER='程军'ANDNOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDC.C#=SC.C#))
3检索只选修了“C语言”的女学生的学号和姓名
SELECTS#,SNAMEFROMSWHERESEX='女'ANDS#IN(
SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMCWHERECNAME='C语言'))
ANDS#NOTIN(
SELECTS#FROMSCWHEREC#IN(SELECTC#FROMCWHERECNAME!
='C语言'))
(二)
1检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTEXISTS(
SELECT*FROMCWHEREC#IN(
SELECTC#FROMSCWHERES#IN(
SELECTS#FROMSWHERESNAME='王海'))ANDNOTEXISTS(
SELECT*FROMSCWHEREC.C#=SC.C#ANDSC.S#=S.S#))
2检索所有选修“C语言”的同学的平均年龄
ASELECTAVG(AGE)AS平均年龄FROMSWHERENOTEXISTS(
SELECT*FROMCWHERECNAME='C语言'ANDNOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDC.C#=SC.C#))
BSELECTAVG(AGE)AS平均年龄FROMSWHERES#IN(
SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMCWHERECNAME='C语言'))
3检索至少有两个同学选修的课程的课程名
SELECTC.C#,CNAMEFROMSJOINSCJOINC
ONC.C#=SC.C#
ONS.S#=SC.S#
GROUPBYC.C#,CNAME
HAVINGCOUNT(*)>=2
(三)
1检索每门课程的选修人数和平均分数
SELECTC.C#,COUNT(*)AS人数,AVG(GRADE)AS平均分数FROM
S,C,SCWHERES.S#=SC.S#ANDC.C#=SC.C#
GROUPBYC.C#
2检索选修了全部课程的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTEXISTS(
SELECT*FROMCWHERENOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDC.C#=SC.C#))
3检索至少选修了“程军”老师所授全部课程的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTEXISTS(
SELECT*FROMCWHERECNAME='程军'ANDNOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDC.C#=SC.C#))
(四)
1检索至少选修了两门课程的学生的学号和姓名
SELECTS.S#,SNAME,COUNT(*)AS课程数FROMS,C,SC
WHERES.S#=SC.S#ANDC.C#=SC.C#
GROUPBYS.S#,SNAME
HAVINGCOUNT(*)>=2
2检索同时选修了“C语言”和“编译原理”的同学的学号和姓名
SELECTS#,SNAMEFROMSWHERES#IN(
SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMCWHERECNAME='C语言'))
ANDS#IN(SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMCWHERECNAME='编译原理'))
3检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTEXISTS(
SELECT*FROMCWHEREC#IN(
SELECTC#FROMSCWHERES#IN(
SELECTS#FROMSWHERESNAME='王海'))ANDNOTEXISTS(
SELECT*FROMSCWHEREC.C#=SC.C#ANDSC.S#=S.S#))
(五)
1检索没有选修任何课程的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERES#NOTIN(
SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMC))
INSERTINTOSVALUES('S6','张军','男',22)
2检索所有课程的成绩都在分以上的同学的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDGRADE<=80)
ANDS#IN(SELECTS#FROMSC
GROUPBYS#)
3检索全部“女”同学都选修的课程的课程名
SELECTCNAMEFROMCWHERENOTEXISTS(
SELECT*FROMSWHERESEX='女'ANDNOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDC.C#=SC.C#))
(六)
1检索有“女”同学选修的课程的课程号和课程名
ASELECTC#,CNAMEFROMCWHEREC#IN(
SELECTC#FROMSCWHERES#IN(
SELECTS#FROMSWHERESEX='女'))
BSELECTDISTINCTC.C#,CNAMEFROMS,C,SC
WHERES.S#=SC.S#ANDC.C#=SC.C#
ANDSEX='女'
CSELECTDISTINCTC.C#,CNAMEFROMSJOINSCJOINC
ONC.C#=SC.C#ONS.S#=SC.S#
ANDSEX='女'
2检索每门课程的选修人数和最高分
SELECTC.C#,COUNT(*)AS选修人数,MAX(GRADE)AS最高分
FROMS,C,SCWHERES.S#=SC.S#ANDC.C#=SC.C#
GROUPBYC.C#
3检索全部“男”同学都选修的课程的课程名
SELECTCNAMEFROMCWHERENOTEXISTS(
SELECT*FROMSWHERESEX='男'ANDNOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDC.C#=SC.C#))
INSERTINTOSCVALUES('S6','C1',90)
(七)
1检索所有课程的平均分在分以上的同学的学号和姓名
ASELECTS.S#,SNAMEFROMS,SC
WHERES.S#=SC.S#
GROUPBYS.S#,SNAME
HAVINGAVG(GRADE)>85
BSELECTS#,SNAMEFROMSWHERES#IN(
SELECTS#FROMSC
GROUPBYS#
HAVINGAVG(GRADE)>85)
2检索每个同学的选课门数及平均分、最高分、最低分
SELECTS#,COUNT(*)AS选课门数,AVG(GRADE)AS平均分,
MAX(GRADE)AS最高分,MIN(GRADE)AS最低分
FROMSC
GROUPBYS#
3检索选修了全部课程的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTEXISTS(
SELECT*FROMCWHERENOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDC.C#=SC.C#))
(八)
1检索选课门数最多的学生的学号和姓名
SELECTTOP1WITHTIESS.S#,SNAMEFROMS,SC
WHERES.S#=SC.S#
GROUPBYS.S#,SNAME
ORDERBYCOUNT(*)DESC
2检索各科成绩均大于等于该科平均成绩的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTEXISTS
(SELECT*FROMSC,CWHEREGRADE<(SELECTAVG(GRADE)FROMSCWHERE
SC.S#=S.S#ANDC.C#=SC.C#GROUPBYC#))
3检索全部“男”同学都选修的课程的课程名
SELECTCNAMEFROMCWHERENOTEXISTS(
SELECT*FROMSWHERESEX='男'ANDNOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDC.C#=SC.C#))
(九)
1检索选修人数最多的课程的课程号和课程名
SELECTTOP1WITHTIESC.C#,CNAMEFROMC,SC
WHEREC.C#=SC.C#
GROUPBYC.C#,CNAME
ORDERBYCOUNT(*)DESC
2检索只选修了“C语言”的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERES#IN(
SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMCWHERECNAME='C语言'))
ANDS#NOTIN(SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMCWHERECNAME!
='C语言'))
3检索至少选修了“王海”同学所选修的全部课程的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTEXISTS(
SELECT*FROMCWHEREC#IN(
SELECTC#FROMSCWHERES#IN(
SELECTS#FROMSWHERESNAME='王海'))ANDNOTEXISTS(
SELECT*FROMSCWHERES.S#=SC.S#ANDC.C#=SC.C#))
(十)
1检索没有选修“数据库原理”的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERES#NOTIN(
SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMCWHERECNAME='数据库原理'))
2检索只选修了“数据库原理”的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERES#IN(
SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMCWHERECNAME='数据库原理'))
ANDS#NOTIN(
SELECTS#FROMSCWHEREC#IN(
SELECTC#FROMCWHERECNAME!
='数据库原理'))
3检索选修了全部课程的学生的学号和姓名
SELECTS#,SNAMEFROMSWHERENOTE