当前位置:   article > 正文

javaSql面试题(10题)

java sql查询 面试题 班级成绩学生

有如下四张表:
学生表Student(stuId,stuName,stuAge,stuSex);
课程表Course(courseId,courseName,teacherId);
成绩表Scores(stuId,courseId,score);
教师表Teacher(teacherId,teacherName);
有如下10个问题:

  1. 查询“001”课程比“002”课程成绩高的所有学生的学号
    SELECT tblstudent.StuId
    from tblstudent
    where
    (SELECT TC.Score FROM tblscore TC WHERE TC.CourseId='001'and tblstudent.StuId=tc.StuId)
    ”>
    (SELECT tb.Score FROM tblscore Tb WHERE Tb.CourseId='002' and tblstudent.StuId=Tb.StuId)

  2. 查询平均成绩大于60分的同学的学号和平均成绩
    select Student.stuId,avg(Scores.score)
    from Student,Scroes
    where Studen.stuId=Scores.stuId
    Group by Student.stuId
    having avg(Scores.score)>60;
    聚合函数是不能连接在where子句后面的。

  3. 查询所有同学的学号,姓名,选课数,总成绩
    Select StuId,StuName,
    (Select Count(CourseId) From tblScore t1 Where t1.StuId=s1.StuId)SelCourses,
    (Select Sum(Score) From tblScore t2 Where t2.StuId=s1.StuId) SumScore
    From tblStudent s1
  4. 查询姓李的老师的个数
    select count(Teacher.TeacherId)
    from Teacher
    where Teacher.TeacherName like "李%";
  5. 查询没有学过叶平老师课的同学的学号,姓名
    详情参见:https://www.cnblogs.com/shenxiaoquan/p/6115347.html
  6. 查询学过“001”课程并且也学过“002”课程的同学的学号,姓名
    详情参见:https://www.cnblogs.com/shenxiaoquan/p/6115563.html
  7. 查询学过叶平老师所教的所有课程的同学的学号,姓名
    详情参见:https://www.cnblogs.com/shenxiaoquan/p/6119698.html
  8. 查询课程编号002的成绩比课程编号001低的所有的同学的学号,姓名
    详情参见:https://www.cnblogs.com/shenxiaoquan/p/6120207.html
  9. 查询所有课程成绩小于60分的 同学的学号,姓名
    select tblstudent.StuId,tblstudent.StuName
    from tblstudent
    where tblstudent.StuId NOT IN
    (select tblscore.StuId from tblscore where tblstudent.StuId=tblscore.StuId AND tblscore.Score>60)
  10. 查询没有学全所有课程的同学的学号,姓名
    详情参见:https://www.cnblogs.com/shenxiaoquan/p/6121656.html

转载于:https://www.cnblogs.com/jasonboren/p/11121975.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小舞很执着/article/detail/900211
推荐阅读
相关标签
  

闽ICP备14008679号