LeetCode(数据库)- 查找成绩处于中游的学生

简介: LeetCode(数据库)- 查找成绩处于中游的学生

题目链接:点击打开链接

题目大意:略。

解题思路:注意 ALL 函数。

AC 代码


-- 解决方案(1)
select student_id, student_name 
from student
where student_id not in
    (select student_id
    from exam e
    where score >= all(select score from exam where exam_id=e.exam_id)
        or score <= all(select score from exam where exam_id=e.exam_id))
and student_id in (select student_id from exam)
-- 解决方案(2)
WITH t AS(SELECT student_id, RANK() OVER(PARTITION BY exam_id ORDER BY score) rk FROM Exam
UNION ALL
SELECT student_id, RANK() OVER(PARTITION BY exam_id ORDER BY score DESC) rk FROM Exam)
SELECT DISTINCT student_id, student_name
FROM Exam JOIN Student USING(student_id)
WHERE student_id NOT IN (SELECT student_id FROM t WHERE rk = 1)
ORDER BY student_id
目录
相关文章
|
10月前
|
NoSQL 前端开发 Java
基于springboot的学生成绩在线管理系统(部署文档+数据库表结构文档)。Javaee项目,springboot项目.
基于springboot的学生成绩在线管理系统(部署文档+数据库表结构文档)。Javaee项目,springboot项目.
|
11月前
|
数据可视化 关系型数据库 数据库
学生成绩管理系统(Python+数据库) 2
学生成绩管理系统(Python+数据库)
122 0
|
1月前
|
数据库连接 数据库 数据安全/隐私保护
【Python】python学生体能考核成绩管理系统(数据库) (源码+报告)【独一无二】
【Python】python学生体能考核成绩管理系统(数据库) (源码+报告)【独一无二】
|
4月前
|
SQL
leetcode-SQL-1112. 每位学生的最高成绩
leetcode-SQL-1112. 每位学生的最高成绩
57 1
|
3月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列8、成绩录入与分析系统
MySQL数据库基础练习系列8、成绩录入与分析系统
24 1
|
2月前
|
SQL 存储 Oracle
Oracle数据库中游标的工作原理与优化方法
Oracle数据库中游标的工作原理与优化方法
|
4月前
|
JavaScript Java 测试技术
学生成绩管理系统|基于Springboot的学生成绩管理系统设计与实现(源码+数据库+文档)
学生成绩管理系统|基于Springboot的学生成绩管理系统设计与实现(源码+数据库+文档)
244 1
|
12月前
|
数据可视化 数据库 数据安全/隐私保护
Python 基于 Django 的学生成绩管理系统,可视化界面+数据库(附源码,教程)
Python 基于 Django 的学生成绩管理系统,可视化界面+数据库(附源码,教程)
|
4月前
|
前端开发 Java 数据库
基于SpringBoot+Vue学生成绩管理系统前后端分离(源码+数据库)
基于SpringBoot+Vue学生成绩管理系统前后端分离(源码+数据库)
122 0
|
4月前
|
NoSQL Java 关系型数据库
基于java swing和mysql实现的学生选课成绩信息管理系统(源码+数据库+ER图文档+运行指导视频)
基于java swing和mysql实现的学生选课成绩信息管理系统(源码+数据库+ER图文档+运行指导视频)
128 0