Hive的Rank排名(rank函数,dense_rank函数,row_numer函数)

news2024/11/19 2:28:45
一、区别:

三者通常都会配合窗口函数over(),并结合partition by order by xxx来分组排序,即形式使用:function_name over(partition by xxx order by xxx)。首先三者都是产生一个自增序列,不同的是

row_number() 排序的字段值相同时序列号不会重复,如:1、2、(2)3、4、5(出现两个2,第二个2继续编号3)

rank() 排序的字段值相同时序列号会重复且下一个序列号跳过重复位,如:1、2、2、4、5(出现两个2,跳过序号3,继续编号4)

dense_rank() 排序的字段值相同时序列号会重复且下一个序列号继续序号自增,如:1、2、2、3、4(出现两个2,继续按照3编号)

二、举例介绍

有如下学生成绩表:student_score(假设只有一个学生多门课程)

统计每个学生各科成绩由高到低排序,语句如下:

SELECT
    row_number() over(partition by name order by score DESC) AS row_number,
    rank() over(partition by name order by score DESC) AS rank,
    dense_rank() over(partition by name order by score DESC) AS dense_rank,
    name,
    subject,
    score
FROM

统计结果如下图所示:

从上图结果可以看出区别

row_number 排序字段值相同时,序号不同,下一个序号顺序自增

rank 排序字段值相同时,序号相同,下一个序号跳跃自增

dense_rank 排序字段值相同时,序号相同,下一个序号顺序自增

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/191808.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023年SAT、ACT、AP、Alevel、IB考试时间表

2023年已经来临!以下是2023年SAT、ACT、AP、A-Level、IB考试时间安排,早规划早备考,建议大家收藏!2023 SAT从2023年开始,美国以外的所有SAT考试都将转为机考,美国SAT考试将在2024年全面转为机考。2023年一共…

前端Vue中实现超炫酷动态背景(全屏背景+自定义banner+登录/注册页)

一、文章引导 #mermaid-svg-9sKRaMRBkdCcbAh2 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-9sKRaMRBkdCcbAh2 .error-icon{fill:#552222;}#mermaid-svg-9sKRaMRBkdCcbAh2 .error-text{fill:#552222;stroke:#55222…

29相似矩阵和若尔当型

一、知识概要 本节从正定矩阵的回顾谈起,介绍了相似矩阵和若尔当型。但是没有进行深入介绍,主要目的是让我们对这些变换方式有所了解。 二、正定矩阵补充 在上一节学习的正定矩阵的基础上,我们给出以下问题: (1&…

2023年2月北京/广州/西安/深圳DAMA-CDGA/CDGP数据治理认证招生简章

DAMA认证为数据管理专业人士提供职业目标晋升规划,彰显了职业发展里程碑及发展阶梯定义,帮助数据管理从业人士获得企业数字化转型战略下的必备职业能力,促进开展工作实践应用及实际问题解决,形成企业所需的新数字经济下的核心职业…

uniapp:常用跨端业务组件

插件内组件包含以下功能: 自定义状态栏组件(ZoNavBar)上拉加载状态组件(ZoLoading)弹窗组件(ZoPopup)搜索组件(ZoSearchBar)空数据组件(ZoEmpty)tab标签组件(ZoTabs)tab下拉筛选组件(ZoSelectTabs)底部导航组件(ZoTabBar)cell导航组件(ZoCell) 10.标题内容组件(ZoT…

复试--数据结构篇[1-4章]

目录第一章 绪论第二章 线性表1-线性表的顺序表示(顺序表)2-线性表的链式表示(链表)(1)单链表(2)循环链表(3)双向链表3-顺序表和链表的比较4-线性表的应用第三…

Hyper-V中的虚拟机双网卡配置

Hyper-V中的虚拟机双网卡配置 在虚拟机交换管中 存在三种虚拟交换机分别是外部、内部和专用 内部网络:虚拟机与虚拟机访问宿主机,虚拟机可以访问物理网络 外部网络:虚拟机与虚拟机之间,虚拟机与宿主机之间,虚拟机或宿…

大数据学习路线

学习建议 #1、Java 这个没毛病,看 Java 程序员进阶之路就好了,Spring Boot 也要能掌握 #2、MySQL 要能写复杂的 SQL 语句,为后面学习 Hive 数仓的 HQL 打好基础。 #3、Linux 大数据的相关软件都是在 Linux 上运行的,所以 Linux …

Django默认的Auth权限管理系统的使用

1.Django默认已经提供了认证系统Auth模块。认证系统包含: 用户管理权限用户组密码哈希系统用户登录或内容显示的表单和视图一个可插拔的后台系统 admin Django默认用户的认证机制依赖Session机制,我们在项目中将引入JWT认证机制,将用户的身…

无法启动此程序,因为dll丢失的解决方法分享

大家在使用电脑的时候,应该经常会遇到这种情况吧?在你打开某些程序的时候,突然弹出一个框框说无法启动此程序,因为dll丢失,那么遇到这种情况,我们需要怎么去解决呢?今天小编就详细的给大家讲解一…

对象的序列化和反序列化

读写JSON格式的数据 通过上面的讲解,我们已经知道如何将文本数据和二进制数据保存到文件中,那么这里还有一个问题,如果希望把一个列表或者一个字典中的数据保存到文件中又该怎么做呢?在Python中,我们可以将程序中的数…

方向梯度直方图(HOG)

摘要: 方向梯度直方图(HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述。HOG特征通过计算和统计图像局部区域的梯度方向直方图来构成特征。主要用于解决人体目标检测,主要通过梯度方向直方图特征来表达人体,提取人体的外…

OpenMMLab AI实战营Day1 计算机视觉算法基础与 OpenMMLab

目录 一、计算机视觉任务 二、计算机视觉的应用 三、计算机视觉的发展 四、OpenMMLab介绍 一、计算机视觉任务 计算机视觉三大基础任务:分类、检测、分割。 分割分为两种:语义分割(Semantic Segmentation)、实例分割&#xff08…

【Node.js实战】一文带你开发博客项目之Express重构(博客的增删查改、morgan写日志)

个人简介 👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,也会涉及到服务端 📃个人状态: 在校大学生一枚,已拿多个前端 offer(秋招) 🚀未…

Java之并发编程(二)

二、Java内存模型(重要) 1. CPU缓存模型 1.1 CPU缓存 CPU缓存是为了解决 CPU处理速度和内存处理速度不对等的问题。(类比:缓存如Redis是为了解决程序处理速度和访问常规关系型数据库速度不对等的问题) 内存缓存是为…

UDS诊断系列介绍16-DTC状态位介绍

本文框架1. 系列介绍2.各状态位逻辑介绍2.0 Bit0(TestFailed)置位逻辑2.1 Bit1(TestFailedThisOperationCycle)置位逻辑2.2 Bit2(PendingDTC)置位逻辑2.3 Bit3(ConfirmedDTC)置位逻辑2.4 Bit4(TestNotCompletedSinceLastClear)置位逻辑2.5 Bit5(TestFailedSinceLastClear)置位逻…

网站排名下降怎么恢复(网站降权的原因如何知道)

网站降权后恢复网站排名的方法 对于我们很多SEO新手来说,降权可能是不可避免的,但很多时候是因为我们的无知或粗心大意导致网站降权,从延长排名周期到导致网站进入沙盒效应,所以我们的网站降权后并非无法恢复。很多时候&#xff…

【逆向分析】静态分析_Navtive_小计

静态分析so小计 源APK https://github.com/eternalsakura/ctf_pwn/blob/master/android%E9%80%86%E5%90%91/mobicrackNDK.apk jadx 通过源码发现关键函数在 public native boolean testFlag(String str);static {System.loadLibrary("mobicrackNDK");}所以要看na…

【C++】入门(上)

本期博客给大家带来的全是干货,慢慢享用吧~C入门主要是一些对C语言不足的语法补充,废话不多说直接上干货:一、C的输出和输入1.1 输出在C上我们要想在屏幕(控制台)上进行一些内容的输出可以使用关键字:cout具…

MoCo解读

MoCo方法由何凯明团队提出,是无监督对比学习的代表作。经过MoCo预训练的视觉表征迁移到各种下游任务时,其效果超过了有监督预训练模型。 两点创新 对比学习的思想是将相似的样本距离拉近,不相似的样本距离拉远。对比学习主要在两方面进行设计…