SQL Server面试题及答案.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL Server面试题及答案

为管理岗位业务培训信息,建立3个表:   S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄   C (C#,CN ) C#,CN 分别代表课程编号、课程名称   SC ( S#,C#,G ) S#,C#,G 分别代表学号、所选修的课程编号、学习成绩   1. 使用标准SQL嵌套语句查询选修课程名称为’税收基础’的学员学号和姓名   --实现代码:   Select SN,SD FROM S   Where [S#] IN(   Select [S#] FROM C,SC   Where C.[C#]=SC.[C#]   AND CN=N税收基础)   2. 使用标准SQL嵌套语句查询选修课程编号为’C2’的学员姓名和所属单位   --实现代码:   Select S.SN,S.SD FROM S,SC   Where S.[S#]=SC.[S#]   AND SC.[C#]=C2   3. 使用标准SQL嵌套语句查询不选修课程编号为’C5’的学员姓名和所属单位   --实现代码:   Select SN,SD FROM S   Where [S#] NOT IN(   Select [S#] FROM SC   Where [C#]=C5)   4. 使用标准SQL嵌套语句查询选修全部课程的学员姓名和所属单位   --实现代码:   Select SN,SD FROM S   Where [S#] IN(   Select [S#] FROM SC   RIGHT JOIN   C ON SC.[C#]=C.[C#] GROUP BY [S#]   HAVING COUNT(*)=COUNT([S#]))   5. 查询选修了课程的学员人数   --实现代码:   Select 学员人数=COUNT(DISTINCT [S#]) FROM SC   6. 查询选修课程超过5门的学员学号和所属单位   --实现代码:   Select SN,SD FROM S   Where [S#] IN(   Select [S#] FROM SC   GROUP BY [S#]   HAVING COUNT(DISTINCT [C#])5) 题目2   问题描述:   已知关系模式:   S (SNO,SNAME) 学生关系。SNO 为学号,SNAME 为姓名   C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师   SC(SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩   1. 找出没有选修过“李明”老师讲授课程的所有学生姓名   --实现代码:   Select SNAME FROM S   Where NOT EXISTS(   Select * FROM SC,C   Where SC.CNO=C.CNO   AND CNAME=李明   AND SC.SNO=S.SNO)   2. 列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩   --实现代码:   Select S.SNO,S.SNAME,AVG_SCGRADE=AVG(SC.SCGRADE)   FROM S,SC,(   Select SNO   FROM SC   Where SCGRADE60   GROUP BY SNO   HAVING COUNT(DISTINCT CNO)=2   )A Where S.SNO=A.SNO AND SC.SNO=A.SNO   GROUP BY S.SNO,S.SNAME   3. 列出既学过“1”号课程,又学过“2”号课程的所有学生姓名   --实现代码:   Select S.SNO,S.SNAME   FROM S,(   Select SC.SNO   FROM SC,C   Where SC.CNO=C.CNO   AND C.CNAME IN(1,2)   GROUP BY SNO   HAVING COUNT(DISTINCT CNO)=2   )SC Where S.SNO=SC.SNO   4. 列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号   --实现代码:   Select S.SNO,S.SNAME   FROM S,(   Select SC1.SNO   FROM SC SC1,C C1,SC SC2,C C2   Where SC1.CNO=C1.CNO AND C1.NAME=1   AND SC2.CNO=C2.CNO AND C2.NAME=2   AND SC1.SCGRADESC2.SCGRADE   )SC Wh

您可能关注的文档

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档