专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 高性能数据库开发

看看这个面试题

发布时间:2010-05-24 21:18:43 文章来源:www.iduyao.cn 采编人员:星星草
看看这个面试题,呵呵
有3个表S,C,SC  
  S(SNO,SNAME)代表(学号,姓名)  
  C(CNO,CNAME,CTEACHER)代表(课号,课名,教师)  
  SC(SNO,CNO,SCGRADE)代表(学号,课号,课号成绩)  
  问题:  
  1,找出没选过“黎明”老师的所有学生姓名。  
  2,列出2门以上(含2门)不及格学生姓名及平均成绩。  
  3,即学过1号课程有学过2号课所有学生的姓名。  
  请用标准SQL语言写出答案。

------解决方案--------------------
1.
select * from s,sc
where not exists (select 1 from c where 课号 = sc.课号 and 教师 = '黎明')
and s.学号 = sc.学号

2.
select s.学号,s.姓名,avg(成绩)
from s,sc
where s.学号 = sc.学号
and s.学号 in (
select 学号
from s,sc
where s.学号 = sc.学号
and 成绩<60
group by 学号
having count(1) > 1)
group by s.学号,s.姓名

3.
select sc.姓名
from s,sc a
where s.学号 = sc.学号 and 课号 = 1
and exists (select 1 from sc where 课号 = 2 and a.学号 = 学号)

友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: