SQL_hive的连续开窗函数

SQL三种排序(开窗)第几名/前几名/topN

1三种排序(开窗)第几名/前几名/topN

求每个学生成绩第二高的科目-排序

思路

t2表:对每个学生 的所有课程 的成绩排序,定好新列rn;(dense_rank() over (),)(partition by student order by socre)(开窗函数:基于每个student 对 score排序)

    select class,student,score,dense_rank() over (
        partition by student order by score DESC
        ) as rn
    from day_sql.day2_kaichaunghanshu

t3表:取a1表中rn=2的数据。

javascript 复制代码
select class,student,score
from (
    select class,student,score,dense_rank() over (
        partition by student order by score
        ) as rn
    from day_sql.day2_kaichaunghanshu
     )t2 where rn=2;

4种排序开窗函数

3种序号排序

rank() -12245

dense_rank() -12234

row_number() -12345

1种百分比排序

percent_rank() - 百分比超过了多少人

相关推荐
ok0604 分钟前
oracle怎么创建定时任务
数据库·oracle
阿桢呀6 分钟前
Redis实战篇《黑马点评》5
数据库·redis·缓存
33三 三like13 分钟前
软件测试:1、单元测试
数据库·sqlserver·log4j
坚定信念,勇往无前18 分钟前
Spring Boot中整合Flink CDC 数据库变更监听器来实现对MySQL数据库
数据库·spring boot·flink
史迪仔011241 分钟前
[SQL] 事务的四大特性(ACID)
数据库·sql
clarance20151 小时前
聊聊 FocusSearch/focus_mcp_sql:Text2SQL 的新玩法
数据库·sql
Kerwin要坚持日更1 小时前
一文讲解Redis中的主从复制
数据库·redis·缓存
Suk-god1 小时前
【Redis】基础知识入门
数据库·redis·缓存
begei2 小时前
在Django中安装、配置、使用CKEditor5,并将CKEditor5录入的文章展现出来,实现一个简单博客网站的功能
数据库·django·sqlite