MySQL利用窗口函数解决排名问题

从MySQL8.0开始,MySQL增加了对窗口函数的支持。本文主要介绍如何利用窗口函数row_number(),dense_rank()和rank()解决相关排名问题。

说明:本文中的SQL代码均测试于MySQL8.0.13环境。

在总体上进行排名:

# 创建学生成绩表:
create table grade(
id int,
name varchar(10),
score int (10)
)engine myisam charset utf8mb4;
 
# 向成绩表中插入数据:
insert into grade values
(1,'张无忌',85),
(2,'李隆基',59),
(3,'王五',60),
(4,'曹操',79),
(5,'小明',90),
(6,'如花',60),
(7,'尉迟恭',100),
(8,'欧阳风',90),
(9,'刘备',90),
(10,'董永',99),
(11,'冯钰',83),
(12,'孙殿英',82);

查看grade表中的信息:

select * from grade;

    结果: 

(1)查询所有学生的成绩信息和排名情况(普通排名,无任何约束条件)&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值