mysql实现编号及mysql实现排名

由于Mysql中没有窗口函数实现编号及排名,下面我就有两个班级的学生成绩为大家解释下在mysql中如何实现

1.建表
create table sore(class int,id int,name varchar(10),sore int)
2.导入数据
insert into sore values(1,1,’zhang’,100),(1,2,’li’,90),(1,3,’wang’,90),(1,4,’zheng’,90),(2,5,’chen’,99),(2,6,’yan’,99),(2,7,’pan’,80),(2,8,’dd’,90),(2,9,’dd’,80),(2,10,’dd’,70);

mysql实现编号及mysql实现排名_第1张图片

3.按照不同的需求实现

- .按分数从高到低编号

mysql实现编号及mysql实现排名_第2张图片

- . 按班级分数从高到低编号(注:相同分数的不同编号)

mysql实现编号及mysql实现排名_第3张图片

- .按分数从高到低排名(注:相同分数的相同名次)

mysql实现编号及mysql实现排名_第4张图片

  • . 按班级分数从高到低排名(注:相同分数的相同名次,其中相同名次不占用位置,排名连续)

mysql实现编号及mysql实现排名_第5张图片

  • . 按班级分数从高到低排名(注:相同分数的相同名次,其中相同名次占用位置,排名不连续)

mysql实现编号及mysql实现排名_第6张图片

你可能感兴趣的:(数据库类)