分享好友 最新动态首页 最新动态分类 切换频道
SQL成绩统计分析—排名问题
2024-12-27 20:28

ROW_NUMBER(),RANK(),DENSE_RANK(),NTILE()


最近写了近半个月的成绩统计服务 , 被SQL折磨半死,下面介绍下在SQL成绩统计分析中遇到的一些小问题,首先介绍下成绩分析中经常遇到的问题 就是排名问题,这里就不得不提到SQL中的ROW_NUMBER(),RANK(),DENSE_RANK(),NTILE()这四个好兄弟了,下面一一揭开它们神秘的面纱

首先create一个学生成绩表(studentScore) 不多做介绍了如下

1.ROW_NUMBER()

定义:ROW_NUMBER()函数作用就是将select查询到的数据进行排序,每一条数据加一个序号,他不能用做于学生成绩的排名,一般多用于分页查询
比如查询前10个 查询10-100个学生。

实例

1.1对学生成绩排序

1.2获取第二个同学的成绩信息

2.RANK()

定义:RANK()函数,顾名思义排名函数,可以对某一个字段进行排名,这里为什么和ROW_NUMBER()不一样那,ROW_NUMBER()是排序,当存在相同成绩的学生时,ROW_NUMBER()会依次进行排序,他们序号不相同,而Rank()则不一样出现相同的,他们的排名是一样的。下面看例子:

2.1对学生成绩进行排名

这里发现 ROW_NUMBER()和RANK()怎么一样?因为学生成绩都不一样所以排名和排序一样,下面改一下就会发现区别。

当出现两个学生成绩相同是里面出现变化。RANK()是 1 2 2,而ROW_NUMBER()则还是1 2 3,这就是RANK()和ROW_NUMBER()的区别了

3.DENSE_RANK()

定义:DENSE_RANK()函数也是排名函数,和RANK()功能相似,也是对字段进行排名,那它和RANK()到底有什么不同那?看例子

实例

DENSE_RANK()密集的排名他和RANK()区别在于,排名的连续性,DENSE_RANK()排名是连续的,RANK()是跳跃的排名,所以一般情况下用的排名函数就是RANK()。

4.NTILE()

定义:NTILE()函数是将有序分区中的行分发到指定数目的组中,各个组有编号,编号从1开始,就像我们说的’分区’一样 ,分为几个区,一个区会有多少个。

这里查询了3次,第一次分为1个’区’ ,所以查询结果number全是1,第二次分为2个区,查询结果为 1 1 2,意思就是 第一个 ‘区’ 为 1 1 两个编号的数据 ,第二个’区’只有2这个数据。

最新文章
经典erp系统界面在哪打开的 经典erp系统界面在哪打开?全面解析入口
经典系统界面在哪打开?全面解析入口经典ERP系统界面可以通过以下几种方式打开:1、直接通过ERP系统提供的客户端进行访问;2、使用ERP系统的Web端口进入;3、通过企业内部的门户网站进行访问。下面将详细介绍每种方式的具体操作步骤和注意
店铺宣传推广的 今年Zui新攻略
店铺宣传推广的今年Zui新攻略在当今竞争激烈的电商行业中,如何通过有效的推广策略脱颖而出,成为每个店铺都关心的问题。竞价开户和电商平台开户成为了提升店铺曝光度和销售额的关键环节。在本文中,我们将为您详细介绍竞价开户的流程和注
金华进口樱桃汁国外工厂备案代理Good Service
金华进口樱桃汁国外工厂备案代理——众多客户见证——选择卓鹰进口清关,就是靠谱!卓鹰百科知识分享:樱桃(学名:Cerasus pseudocerasus),是某些李属类植物的统称,包括樱桃亚属、酸樱桃亚属、桂樱亚属等。乔木,高2-6米,树皮灰白色。
山东省济南较好的职业学校-报名电话
春蚕一生没说过自诩的话,那吐出的银丝就是丈量生命价值的尺子。敬爱的老师,您从未在别人面前炫耀过,但那盛开的桃李,就是对您最高的评价。仅供参考,如果觉得很不错,欢迎大家咨询!济南应用技术职业中等专业学校开设有针对性强、适应市
用AI轻松生成高清美女写真,这款工具你一定要试试!
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在这个数字时代,AI技术不断进步,各种与我们生活息息相关的领域都在发生着翻天覆地的变化。
漫蛙漫画在线登录入口,免费进入海量漫画世界,畅享精彩漫画体验
漫蛙漫画作为一个备受欢迎的漫画平台,凭借其丰富的漫画资源和便捷的阅读体验吸引了大量漫画爱好者的关注。通过漫蛙漫画的在线登录入口,用户可以轻松访问平台,免费阅读海量漫画,享受极致的视觉体验。无论你是喜爱国产漫画,还是钟情于日
众多Android 开源项目推荐,给力工作给力学习
Robotium是一个测试框架能够方便你为Android应用程序编写强大、健壮的自动黑盒测试用例。利用Robotium的支持,用例开发人员能够编写功能、系统和验收测试方案Robotium支持Activities、Dialogs、Toasts、Menus和Context Menus。项目地
英雄联盟射程最远的英雄是谁?
1、平a射程最远的皮城女警,射程高达650码;2、18级射程最远的麦林炮手,天赋加上18级射程可达703码;3、技能加成后射程最远的深渊巨口500的基本射程加上W技能可达710,说明特例首领之傲射程只有425,不过E技能打到人再用q技能可达1200码。
电池续航:长时间使用无需频繁充电
在智能手机市场中,OPPO的Y系列一直以来都是中低端市场的重要选择。OPPO Y31s作为Y系列的一员,凭借其较为亲民的价格和出色的功能配置,吸引了不少消费者的关注。本文将全面解析OPPO Y31s的性能特点,帮助大家了解这款手机的实际表现以及它
搜狗搜刮引擎网排名优化器_搜狗搜刮引擎网络排名优化器(搜狗搜索引擎网排名优化器)
末了,在各人开展下拉优化之前小马识途顾问夸大几点起首,下拉优化不但仅有百度,尚有360搜狗神马本日头条等主流搜刮平台,只要是搜刮引擎都可以做下拉优化其次下拉优化不是独立存在的,必要有肯定网络推广底子,就是遐想出来词经搜刮后有
相关文章
推荐文章
发表评论
0评