sql统计各科成绩⼤于平均分的⼈_MySQL常考的⾯试题「复杂
SQL编写」
技术⾯试中,问到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)”课程的同学的学号、姓名;
mysql面试题sql9、查询学过“叶平”⽼师所教的所有课的同学的学号、姓名;
10、查询课程编号“数学(cid=2)”的成绩⽐课程编号“语⽂(cid=1)”课程低的所有同学的学号、姓名;
11、查询所有课程成绩⼩于60分的同学的学号、姓名;
12、查询没有学全所有课的同学的学号、姓名;
13、按平均成绩从⾼到低显⽰所有学⽣的“语⽂“、“数学”、“英语”三门的课程成绩,按如下形式显⽰:学⽣
ID,语⽂,数学,英语,有效课程数,有效平均分
14、查询各科成绩最⾼和最低的分:以如下形式显⽰:课程ID,最⾼分,最低分
15、查询男⽣、⼥⽣⼈数, 以如下形式显⽰:男⽣⼈数,⼥⽣⼈数
16、查询课程名称为“数学”,且分数低于60的学⽣姓名和分数
17、查询两门以上不及格课程的同学的学号及其平均成绩;
18、检索“cid=4”课程分数⼩于60,按分数降序排列的同学学号
「表结构以及部分数据如下图展⽰」
student表
teacher表
course表
sc表
⾯试题详解
1、查询每个学⽣的学号、姓名和每门课的成绩;
(1)利⽤隐式内联,只输出两表中都有的字段
SQL语句:
SELECT
网页设计怎么让图片居中student.sid AS 学⽣ID,
sql server恢复数据库student.sname AS 学⽣姓名,
(SELECT courseame FROM course WHERE course.cid=sc.cid) AS 课程名称, sc.score AS 成绩
FROM student,sc
WHERE student.sid = sc.sid
介绍java知识体系的书籍查询结果:
(2)利⽤左连接,假如左表有,右表没有,则按左表为准,右表缺省字段置为NULL SQL语句:
SELECT
student.sid AS 学⽣ID,
student.sname AS 学⽣姓名,
(SELECT courseame FROM course WHERE course.cid=sc.cid) AS 课程名称,
sc.score AS 成绩
FROM student
LEFT JOIN sc
ON student.sid = sc.sid
因为 student 表 和 sc 表没有冗余字段,所以(1)和(2)两种查询⽅法结果⼀致。
2、查询都学过2号同学(sid=2)学习过的课程的同学的学号
SQL语句:
SELECT sid
FROM sc
WHERE cid IN (SELECT cid FROM sc WHERE sid=2)
GROUP BY sid
win10批处理命令HAVING COUNT(*) = (SELECT COUNT(*) FROM sc WHERE sid=2)
查询结果:html添加空格
3、查询“语⽂(cid=1)”课程⽐“数学(cid=2)”课程成绩⾼的所有学⽣的学号;SQL语句:
SELECT a.sid
FROM
(SELECT sid, score FROM sc WHERE cid=1) a,
(SELECT sid, score FROM sc WHERE cid=2) b
WHERE a.sid=b.sid AND a.score > b.score;
查询结果:
4、查询平均成绩⼤于60分的同学的学号和平均成绩;
SQL语句:
SELECT sid, AVG(score)
FROM `sc`
GROUP BY sid
HAVING AVG(score) > 60;
查询结果:
5、查询所有同学的学号、姓名、选课数、总成绩;
SQL:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论