回 帖 发 新 帖 刷新版面

主题:初学SQL语句,求助语句

student(sno,sname,sage,ssex,sdept)
course(cno,cname,credit)
sc(sno,cno,grade)

注明:credit是学分
      student里的sno和course里cno分别sc里的sno和cno的外键

1)找出各科成绩均在85分以上(含)的学生的学号、姓名
2)找出有三门课程的成绩在75分以下的学生的学号、姓名
3)列出数据库成绩的前五名学生的学号、姓名、成绩

回复列表 (共2个回复)

沙发

1)select distinct b.sno,b.sname
  from sc a inner join student b
  on a.sno=b.sno
  where a.sno not in(select sno from sc where grade<85)
2)select distinct b.sno,b.sname
  from sc a inner join student b
  on a.sno=b.sno
  where a.sno in (select sno from sc where grade<75 group by sno hanving count(grade)=3)

板凳

3)select top 5 b.sno,b.sname,a.grade
  from sc a inner join student b
  on a.sno=b.sno
  where a.cno='数据库的课程id'
  order by grade desc

我来回复

您尚未登录,请登录后再回复。点此登录或注册