资源描述:
《经典的SQL语句面试题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Student(S#,Sname,Sage,Ssex)学生表S#:学号;Sname:学生姓名;Sage:学生年龄;Ssex:学生性别Course(C#,Cname,T#)课程表C#,课程编号;Cname:课程名字;T#:教师编号SC(S#,C#,score)成绩表S#:学号;C#,课程编号;score:成绩Teacher(T#,Tname)教师表 T#:教师编号;Tname:教师名字13、查询学生平均成绩及其名次(不用Row_num())1、查询“001”课程比“002”课程成绩高的所有学生的学号;1、查询“001”课程比“00
2、2”课程成绩高的所有学生的学号;SELECTa.s#FROM(SELECTs#,scoreFROMscWHEREc#='001')a,(SELECTs#,scoreFROMscWHEREc#='002')bWHEREa.score>b.scoreANDa.s#=b.s#;2、查询平均成绩大于60分的同学的学号和平均成绩;2、查询平均成绩大于60分的同学的学号和平均成绩;SELECTs#,avg(score)FROMscGROUPBYs#havingavg(score)>60;3、查询所有同学的学号、姓名、选课数、总成绩;3、查询
3、所有同学的学号、姓名、选课数、总成绩;SELECTstudent.s#,student.sname,COUNT(sc.c#),SUM(score)FROMstudentLEFTOUTERJOINscONstudent.s#=sc.s#GROUPBYstudent.s#,sname4、查询姓“李”的老师的个数;4、查询姓“李”的老师的个数;SELECTCOUNT(DISTINCT(tname)),COUNT(tname)FROMteacherWHEREtnameLIKE'李%';SELECTCOUNT(tname)FROMteac
4、herWHEREtnameLIKE'李%';5、查询没学过“叶平”老师课的同学的学号、姓名;5、查询没学过“叶平”老师课的同学的学号、姓名;SELECTstudent.s#,student.snameFROMstudentWHEREs#NOTIN(SELECTDISTINCT(sc.s#)FROMsc,course,teacherWHEREsc.c#=course.c#ANDteacher.t#=course.t#ANDteacher.tname='叶平');6、查询学过“001”并且也学过编号“002”课程的同学的学号、姓名;
5、6、查询学过“001”并且也学过编号“002”课程的同学的学号、姓名;SELECTstudent.s#,student.snameFROMstudent,scWHEREstudent.s#=sc.s#ANDsc.c#='001'andEXISTS(SELECT*FROMscASsc_2WHEREsc_2.s#=sc.s#ANDsc_2.c#='002');7、查询学过“叶平”老师所教的所有课的同学的学号、姓名;7、查询学过“叶平”老师所教的所有课的同学的学号、姓名;SELECTs#,snameFROMstudentWHEREs#
6、IN(SELECTs#FROMsc,course,teacherWHEREsc.c#=course.c#ANDteacher.t#=course.t#ANDteacher.tname='叶平'GROUPBYs#havingCOUNT(sc.c#)=(SELECTCOUNT(c#)FROMcourse,teacherWHEREteacher.t#=course.t#ANDtname='叶平'));8、查询所有课程成绩小于60分的同学的学号、姓名;8、查询所有课程成绩小于60分的同学的学号、姓名;SELECTs#,snameFROM
7、studentWHEREs#NOTIN(SELECTstudent.s#FROMstudent,scWHEREs.s#=sc.s#ANDscore>60);9、查询没有学全所有课的同学的学号、姓名;9、查询没有学全所有课的同学的学号、姓名;SELECTstudent.s#,student.snameFROMstudent,scWHEREstudent.s#=sc.s#GROUPBYstudent.s#,student.snamehavingCOUNT(c#)<(SELECTCOUNT(c#)FROMcourse);10、查询至少
8、有一门课与学号为“1001”的同学所学相同的同学的学号和姓名;10、查询至少有一门课与学号为“1001”的同学所学相同的同学的学号和姓名;SELECTs#,snameFROMstudent,scWHEREstudent.s#=sc.s#ANDc#IN(selec