LeetCode MySQL 1412. 查找成绩处于中游的学生
发布日期:2021-07-01 03:30:37
浏览次数:2
分类:技术文章
本文共 2557 字,大约阅读时间需要 8 分钟。
文章目录
1. 题目
表: Student
+---------------------+---------+| Column Name | Type |+---------------------+---------+| student_id | int || student_name | varchar |+---------------------+---------+student_id 是该表主键.student_name 学生名字.
表: Exam
+---------------+---------+| Column Name | Type |+---------------+---------+| exam_id | int || student_id | int || score | int |+---------------+---------+(exam_id, student_id) 是该表主键.学生 student_id 在测验 exam_id 中得分为 score.
成绩处于中游的学生是指至少参加了一次测验, 且得分既不是最高分也不是最低分的学生。
写一个 SQL 语句,找出在所有测验中都处于中游的学生 (student_id, student_name)。
不要返回从来没有参加过测验的学生。返回结果表按照 student_id 排序。
查询结果格式如下。
Student 表:+-------------+---------------+| student_id | student_name |+-------------+---------------+| 1 | Daniel || 2 | Jade || 3 | Stella || 4 | Jonathan || 5 | Will |+-------------+---------------+Exam 表:+------------+--------------+-----------+| exam_id | student_id | score |+------------+--------------+-----------+| 10 | 1 | 70 || 10 | 2 | 80 || 10 | 3 | 90 || 20 | 1 | 80 || 30 | 1 | 70 || 30 | 3 | 80 || 30 | 4 | 90 || 40 | 1 | 60 || 40 | 2 | 70 || 40 | 4 | 80 |+------------+--------------+-----------+Result 表:+-------------+---------------+| student_id | student_name |+-------------+---------------+| 2 | Jade |+-------------+---------------+对于测验 1: 学生 1 和 3 分别获得了最低分和最高分。对于测验 2: 学生 1 既获得了最高分, 也获得了最低分。对于测验 3 和 4: 学生 1 和 4 分别获得了最低分和最高分。学生 2 和 5 没有在任一场测验中获得了最高分或者最低分。因为学生 5 从来没有参加过任何测验, 所以他被排除于结果表。由此, 我们仅仅返回学生 2 的信息。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/find-the-quiet-students-in-all-exams 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
# Write your MySQL query statement belowselect student_id, student_namefrom ( select distinct student_id from Exam where student_id not in ( select distinct student_id from Exam e left join ( # 考试最高、最低分 select exam_id, max(score) maxs, min(score) mins from Exam group by exam_id ) t using(exam_id) where score = maxs or score = mins # 分数等于最高的或者最低的学生 )) t left join Studentusing(student_id)order by student_id
我的CSDN
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
转载地址:https://michael.blog.csdn.net/article/details/107701297 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月18日 11时00分50秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Qt解析XML文件(QDomDocument)
2019-05-02
Qt图形视图框架
2019-05-02
Qt5中表格处理大数据量
2019-05-02
LeakCanary源码分析
2019-05-02
[转自]同步/异步与阻塞/非阻塞的区别
2019-05-02
单例模式(Singleton)
2019-05-02
ucOS 时钟中断(ISR)
2019-05-02
android Activity之间跳转。
2019-05-02
android Handler解析
2019-05-02
解决 emulator-5554 disconnected
2019-05-02
Android之Activity生命周期
2019-05-02
Android之AIDL使用解析
2019-05-02
REBOL编码解析
2019-05-02
java synchronized详解
2019-05-02
android之Http使用简介
2019-05-02
访问者模式讨论篇:java的动态绑定与双分派
2019-05-02
GreenDao学习笔记——初始化和增删改查
2019-05-02
asp.net core 学习资料整理
2019-05-02
ASP.NET CORE使用控制台程序调试web应用
2019-05-02