问题详情

假设某教学管理数据库有以下三张表,请写出下列问题的SQL语句:    学生(学号,姓名,年龄,性别)    课程(课程号,课程名,任课教师) 成绩(学号,课程号,成绩) (1)如何在SQL Server上创建这三张表; (2)查询刘峰教师所授课程号,课程名; (3)查询年龄大于20岁的所有男同学的学号、姓名; (4)查询至少选修了两门课程(含两门)的学生学号; (5)查询王文芳同学选修的所有课程的课程号; (6)查询王文芳同学不学的课程的课程号; (7)查询所有上刘峰老师课程的学生学号; (8)查询所有选修“数据库原理”的学生的学号; (9)向学生表中插入一条记录(’2003001’,’吴红’,21,’女’);(1表示女,0表示男) (10)删除三张表中所有学号为20020001的学生信息; (11)把学号为20030002的学生的年龄改为22岁。


时间:2022-09-21 21:05 关键词: CMS专题

答案解析

1.学生表:<br> Create&ensp;table&ensp;学生表&ensp;(&ensp;&ensp;&ensp;<br> 学号&ensp;char&ensp;(8)&ensp;primary&ensp;Key,&ensp;&ensp;&ensp;<br> 姓名&ensp;char(8),&ensp;&ensp;&ensp;<br> 年龄&ensp;int,&ensp;&ensp;&ensp;<br> 性别&ensp;bit<br> )<br> &ensp;&ensp;&ensp;<br> 课程表:<br> Create&ensp;table&ensp;课程表&ensp;(&ensp;&ensp;&ensp;<br> 课程号&ensp;char&ensp;(7)&ensp;primary&ensp;Key,&ensp;<br> 课程名&ensp;char(20),&ensp;&ensp;&ensp;<br> 任课教师&ensp;char&ensp;(8)<br> )<br> &ensp;&ensp;&ensp;<br> 成绩表:<br> Create&ensp;table&ensp;成绩表&ensp;(&ensp;&ensp;&ensp;<br> 学号&ensp;char&ensp;(8),&ensp;&ensp;<br> 课程号&ensp;char&ensp;(7),&ensp;&ensp;&ensp;<br> 成绩&ensp;Numeric&ensp;(4,2)<br> )<br> 2.Select课程号,&ensp;课程名&ensp;from课程表&ensp;where任课教师=&rsquo;&ensp;刘峰&rsquo;<br> 3.Select&ensp;学号,&ensp;姓名&ensp;from&ensp;学生表&ensp;where&ensp;性别=1&ensp;and&ensp;年龄>20<br> 4.select&ensp;学号&ensp;from&ensp;成绩&ensp;&ensp;&ensp;group&ensp;by&ensp;学号&ensp;&ensp;&ensp;having&ensp;count(学号)>=2&ensp;<br> 5.Select&ensp;课程号&ensp;from&ensp;成绩表,&ensp;学生表&ensp;<br> &ensp;&ensp;Where学生表.姓名=&rsquo;&ensp;王文芳&rsquo;&ensp;and&ensp;学生表.学号=成绩表.学号<br> 6.select&ensp;课程号&ensp;from&ensp;成绩表&ensp;<br> &ensp;&ensp;where&ensp;课程号&ensp;not&ensp;in&ensp;(select&ensp;课程号&ensp;from&ensp;学生表,成绩表&ensp;where&ensp;学生表.姓名=&#39;王文芳&#39;&ensp;and&ensp;学生表.学号=成绩表.学号)<br> 7.Select&ensp;学号&ensp;from&ensp;成绩表,课程表,学生表&ensp;<br> &ensp;&ensp;Where&ensp;课程表.任课教师=&#39;刘世峰&#39;&ensp;and&ensp;课程表.课程号=成绩表.课程号&ensp;and&ensp;课程表.学号=成绩表.学号<br> 8.Select&ensp;学号&ensp;from&ensp;成绩表,课程表&ensp;<br> &ensp;&ensp;where&ensp;课程表.课程名=&#39;数据库技术&#39;&ensp;and&ensp;课程表.课程号=成绩表.课程号<br> 9.insert&ensp;into&ensp;学生表&ensp;values&ensp;(&#39;2003001&#39;,&#39;吴红&#39;,&#39;21&#39;,1)&ensp;<br> 10.Delete&ensp;from学生表&ensp;where&ensp;学号=&rsquo;&ensp;>20020001&rsquo;&ensp;&ensp;&ensp;<br> Delete&ensp;from学生表&ensp;where&ensp;学号=&rsquo;&ensp;20020001&rsquo;&ensp;<br> 11.&ensp;Update&ensp;学生表&ensp;set&ensp;年龄=&rsquo;22&rsquo;&ensp;where学号=&rsquo;20030002&rsquo;<br>