【MySQL】:四大排名函数

一、row_number()

row_number()排名,序号连续且不重复,即使表中遇到有一样的数值也是如此.

select score,row_number() OVER(order by score desc) as paiming from Scores;

在这里插入图片描述

二、rank()

row_number()排名,序号可以重复,但不连续,要求把排序的数值相同的归为一组且序号相同

select score,rank() OVER(order by score desc) as paiming from Scores;

在这里插入图片描述

三、dense_rank()

Dense_rank() 排序是连续的,也会把相同的值分为一组且每组排序号一样

select score,dense_rank() OVER(order by score desc) as paiming from Scores;

在这里插入图片描述
四、ntile()
Ntile(group_num)将表分为group_num个组,每组序号都一样。

select score,ntile(3) OVER(order by score desc) as paiming from Scores;

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值