技术面试中,问到MySQL时,学生表查询SQL语句,肯定是被问得最多的。
如果你天天玩表,对你来说应该会是小菜一碟。
但是还是有很多职场老将在这里折戟沉沙,甚是可惜!
今天,臻叔就带大家一起盘点一下,学生表到底都会问什么!?
「高能预警」:以下列举的问题,都有答案,亲手验证过正确性
文章很长,建议收藏,面试前可以拿出来看一看
建议先看题目,自己练习,不会的再看答案
先来看看题目
给定四个表:student(学生表)
teacher(老师表)
course(课程表)
sc(成绩表)
根据题目要求,写出SQL语句。
「问题列表」
1、查询每个学生的学号、姓名和每门课的成绩
2、查询都学过2号同学(sid=2)学习过的课程的同学的学号
3、查询“语文(cid=1)”课程比“数学(cid=2)”课程成绩高的所有学生的学号;
4、查询平均成绩大于60分的同学的学号和平均成绩;
5、查询所有同学的学号、姓名、选课数、总成绩;
6、查询姓“李”的老师的个数;
7、查询没学过“叶平”老师课的同学的学号、姓名;
8、查询学过“语文(cid=1)”并且也学过“数学(cid=2)”课程的同学的学号、姓名;
9、查询学过“叶平”老师所教的所有课的同学的学号、姓名;
10、查询课程编号“数学(cid=2)”的成绩比课程编号“语文(cid=1)”课程低的所有同学的学号、姓名;
11、查询所有课程成绩小于60分的同学的学号、姓名;
12、查询没有学全所有课的同学的学号、姓名;
13、按平均成绩从高到低显示所有学生的“语文“、“数学”、“英语”三门的课程成绩,按如下形式显示: 学生
ID,语文,数学,英语,有效课程数,有效平均分
14、查询各科成绩最高和最低的分:以如下形式显示:课程ID,最高分,最低分
15、查询男生、女生人数, 以如下形式显示:男生人数,女生人数
16、查询课程名称为“数学”,且分数低于60的学生姓名和分数
17、查询两门以上不及格课程的同学的学号及其平均成绩;
18、检索“cid=4”课程分数小于60,按分数降序排列的同学学号
「表结构以及部分数据如下图展示」
student表
teacher表
course表
sc表
面试题详解